私は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の例として、変数「data」を使用しました。とにかく、私は上記のコードをgetJSONで更新しましたが、getJSONを使用していないため、上記の例では実際には表示できないエラーが発生します。
更新されたJAVASCRIPT:
var viewModel;
$.getJSON('/myurl',
function (data) {
viewModel = data;
});
alert(viewModel);
$(function() {
ko.applyBindings(viewModel);
});
私がここで抱えている問題は、アラートボックスがそこにある限り、それが機能することです。その行をコメントすると、機能しません!