我有一个地铁应用程序(HTML5 和 WinJS),正在尝试显示服务数据。实际上,这里是从我的服务中检索 JSON 数据,但无法将此数据绑定到 listview 。任何人都给我一些工作的例子。
谢谢你。
我有一个地铁应用程序(HTML5 和 WinJS),正在尝试显示服务数据。实际上,这里是从我的服务中检索 JSON 数据,但无法将此数据绑定到 listview 。任何人都给我一些工作的例子。
谢谢你。
你可以使用WinJS.xhr()
这个。您可以在此链接https://msdn.microsoft.com/pt-br/library/windows/apps/br229787.aspx上阅读有关它的更多信息,这是一个示例:
var path = "data/file.json";
function getData(path) {
WinJS.xhr({ url: path }).then(
function (response) {
var json = JSON.parse(response.responseText);
// Since this is an asynchronous function, you can't
// return the data, so you can:
// 1) retrieve the data to a namespace once the app loads.
var list = new WinJS.Binding.List(json);
Somenomespace.data = list;
// 2) or do all the binding inside the function.
var listView = document.getElementById("listViewID");
listView.winControl.itemDataSource = list.dataSource;
});
}
如果您使用内置的 JSON.parse(jsonString) 函数,您可以使用普通的 for 循环遍历内容,因为它是一个普通的对象并照常添加它。只要记住处理或渲染数据。
她是我在使用列表视图的搜索页面中的代码示例:
var response = JSON.parse(data) ;
var originalResults = new WinJS.Binding.List();
for (x in response) {
originalResults.push(response[x]);
}
this.populateFilterBar(element, originalResults);
this.applyFilter(this.filters[0], originalResults);