3

単一ページの Web アプリケーションでデータ バインディングにノックアウト js を使用しています。サーバーへの ajax 呼び出しによって応答として返された json オブジェクトを使用して、ドロップダウン リストを作成する必要があります。ここにモデルと ajax 呼び出しを追加しています。解決策を提案してください。

var permissionRequestModel = {
fromDate: ko.observable(''),
toDate: ko.observable(''),
fulldayPermission: ko.observable(false),

fromTimeHH: ko.observable(''),
fromTimeMM: ko.observable(''),
toTimeHH: ko.observable(''),
toTimeMM: ko.observable(''),

permissionTypeOne: ko.observable(''),
permissionTypeTwo: ko.observable(''),

approverList: ko.observableArray([]),

reasonLeave: ko.observable('')

};

//ajax call

$(function () {

$.ajax({
    url: "{generic uri}",
    type: "GET",
    contentType: "application/json",
    dataType: "json",
    error: function () {
        alert("failed");
    },
    success: function (data) {
             alert("Success");
    }
});
});

ApproverList (ko.observablearray) に json 応答を入力する必要があります。

4

1 に答える 1

3

ノックアウトマッピングプラグインの使用:

approverList = ko.mapping.fromJS(data);

または、すでに入力されているビューモデルを更新する場合:

success: function (data)
{
    ko.mapping.fromJS(data, approverList);
}
于 2013-01-31T11:20:16.393 に答える