asp.net mvc 2 プロジェクトでノックアウトを使い始めました
とにかく簡単なことをやってみた。私は次のようなモデルを作成しました:
var userViewModel = {
ID: ko.observable(),
assignedGroups: ko.observableArray(),
avilableGroups: ko.observableArray(),
permissions: ko.observableArray()
};
次に、jquery の document.ready で次のように呼び出しました。
ko.applyBindings(userViewModel);
私が持っているaspx自体に:
<select multiple id="groupOfUser" class="multi_added_groups" data-bind="foreach: assignedGroups">
<option data-bind="text: $data, value: $data"></option>
</select>
<span data-bind="text: ID"></span>
最初にデータを userViewModel に入れると、ビューは期待どおりに表示されます。それは素晴らしいことですが、最初はビューを空から始めたいと思っています。ユーザーがユーザーを選択した後、私は ajax リクエストを作成します。私の応答は次のとおりです。
{"ID":691,
"assignedGroups":["group1","group2"],
"avilableGroups":["role.administrator","role.editor"],
"permissions":[{"name":"admin","level":"ReadWrite"},
{"name":"admin.errorInfo","level":"Read"}]
}
次に、コールバック関数で:
ko.mapping.fromJS(res, userViewModel);
それだけだと思います。ビューがサーバーからの新しいデータで更新されません...何が間違っていますか?
ありがとう!