我尝试使用knockoutJS将JSON绑定到HTML中的list-element。我使用jQuery获取JSON,然后将其放入可观察的数组中。 在控制台中记录JSON工作正常。如果我把所有内容放在JavaScript中的数组中但它没有用JSON将任何东西推入HTML中,它的工作正常。我也没有在控制台中出现任何错误。
我的HTML看起来像是
<div class="list">
<ul id="listItems" data-bind="foreach: listItems">
<li data-bind="text: number"></li>
</ul>
</div>
我的JavaScript
$.ajaxSetup({
async: false,
});
function getlistItems() {
var self = this;
self.listItems = ko.observableArray([]);
$.getJSON("json_old.json", function(oldJSONData) {
console.log(oldJSONData);
self.listItems(oldJSONData);
})
}
ko.applyBindings(new getlistItems());
我的JSON
{ "listItem": [
{ "letter": "a", "number": "1" },
{ "letter": "b", "number": "2" },
{ "letter": "c", "number": "3" },
{ "letter": "d", "number": "4" },
{ "letter": "e", "number": "5" },
{ "letter": "f", "number": "6" },
{ "letter": "g", "number": "7" },
{ "letter": "h", "number": "8" },
{ "letter": "i", "number": "9" } ]}
我错过了什么?我想将JSON的number-property推入列表。