-1

我有一个地铁应用程序(HTML5 和 WinJS),正在尝试显示服务数据。实际上,这里是从我的服务中检索 JSON 数据,但无法将此数据绑定到 listview 。任何人都给我一些工作的例子。

谢谢你。

4

2 回答 2

1

你可以使用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;
        });
}
于 2015-07-25T15:31:06.487 回答
0

如果您使用内置的 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); 
于 2012-08-16T12:20:20.400 回答