智能客户端数据源重新绑定
Smart client data source rebind
我创建了一个 smartclient 数据源和列表网格。 autoFetchData 设置为 false,列表网格数据源设置为我的数据源。
当我进行搜索时,我将数据源 dataURL 设置为我的 url 并调用列表网格 fetchData 方法。
var url = "myurl?value=123";
deploymentDataSource.dataURL = url;
deploymentList.fetchData();
这工作正常,列表网格正确显示值。
问题是当我尝试使用新参数再次进行搜索时,它不会使用新值更新我的列表网格。
var url = "myurl?value=456";
deploymentDataSource.dataURL = url;
deploymentList.fetchData();
这是我的数据源和列表网格:
isc.DataSource.create({
ID: "deploymentDataSource",
dataFormat: "json",
fields: [
{name: "id", title: "id"},
{name: "date", title: "date"},
{name: "buildNumber", title: "buildNumber"},
{name: "projectKey", title: "projectKey"},
{name: "planKey", title: "planKey"},
{name: "buildEnvironment", title: "buildEnvironment"}
]
});
isc.ListGrid.create({
ID: "deploymentList",
width: 600, height: 300, alternateRecordStyles: true,
dataSource: "deploymentDataSource",
selectionType: "simple",
autoFetchData: false
});
尝试在更改 DataSource.dataURL
后调用它
ListGrid.invalidateCache();
而且您不需要再次致电 ListGrid.fetchData()
参考:
http://www.smartclient.com/docs/release/a/b/c/go.html#method..ListGrid.invalidateCache
我创建了一个 smartclient 数据源和列表网格。 autoFetchData 设置为 false,列表网格数据源设置为我的数据源。
当我进行搜索时,我将数据源 dataURL 设置为我的 url 并调用列表网格 fetchData 方法。
var url = "myurl?value=123";
deploymentDataSource.dataURL = url;
deploymentList.fetchData();
这工作正常,列表网格正确显示值。
问题是当我尝试使用新参数再次进行搜索时,它不会使用新值更新我的列表网格。
var url = "myurl?value=456";
deploymentDataSource.dataURL = url;
deploymentList.fetchData();
这是我的数据源和列表网格:
isc.DataSource.create({
ID: "deploymentDataSource",
dataFormat: "json",
fields: [
{name: "id", title: "id"},
{name: "date", title: "date"},
{name: "buildNumber", title: "buildNumber"},
{name: "projectKey", title: "projectKey"},
{name: "planKey", title: "planKey"},
{name: "buildEnvironment", title: "buildEnvironment"}
]
});
isc.ListGrid.create({
ID: "deploymentList",
width: 600, height: 300, alternateRecordStyles: true,
dataSource: "deploymentDataSource",
selectionType: "simple",
autoFetchData: false
});
尝试在更改 DataSource.dataURL
ListGrid.invalidateCache();
而且您不需要再次致电 ListGrid.fetchData()
参考: http://www.smartclient.com/docs/release/a/b/c/go.html#method..ListGrid.invalidateCache