我刚刚决定学习knockoutjs,并且在将一些json绑定到我的视图模型时遇到了一些问题。我已经搜索了很多东西,尝试了很多东西,但我一定错过了一些东西。
Javascript:
var data = {
"TestList": [{ "ID": "1", "Name": "Dave" }, { "ID": "2", "Name": "Mustaine" }],
"TestText": "Hello World"
};
var viewModel = {};
ko.mapping.fromJSON(data, viewModel);
ko.applyBindings(viewModel);
HTML
TestText: <span data-bind="text: TestText"></span><br>
TestList: <select id="TestList"
data-bind="
options: TestList,
optionsText: 'Name',
optionsValue: 'ID',
optionsCaption: 'Please Select'"></select>
编辑
变量“数据”用作我从服务器返回的 json 示例。无论如何,我已经用 getJSON 更新了上面的代码并得到了一个错误,上面的例子真的不能给我,因为它不使用 getJSON。
更新了 JAVASCRIPT:
var viewModel;
$.getJSON('/myurl',
function (data) {
viewModel = data;
});
alert(viewModel);
$(function() {
ko.applyBindings(viewModel);
});
我在这里遇到的问题是它可以工作..只要警报框在那里。如果我评论那条线,它不起作用!