将JSON绑定到HTML元素不起作用

时间:2018-05-19 16:14:44

标签: javascript html json knockout.js

我尝试使用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推入列表。

0 个答案:

没有答案