Kendo DataSource - 未在DataSource.sync()上调用更新

时间:2016-01-05 04:07:39

标签: asp.net-mvc mvvm kendo-ui datasource single-page-application

我有一个Kendo UI单页应用程序。我的应用程序的第一页使用此模板:

                <!-- App details -->
                <script type="text/x-kendo-template" id="appDetails-template">
                    <div id="appSettings">
                         <input id="appName" type="text" placeholder="Your app title goes here" data-bind="value: appName" />
                         <input id="id" type="text" placeholder="id goes here" data-bind="value: id" />
                    </div>
                    <div>
                        <input type="button" value="Next" data-bind="click: showContactDetails" />
                    </div>
                </script>

我将视图绑定到像这样的ViewModel:

kendo.bind($('#appSettings'), appSettingsViewModel);

然后我指定ViewModel,其中包含一个DataSource:

var appSettingsViewModel = kendo.observable({

appDetailsSource: new kendo.data.DataSource({
    autoSync: true,
    transport: {
        create: {
            url: appControllerUrl + "/SaveAppDetails",
            dataType: "json"
        },
        update: {
            url: appControllerUrl + "/SaveAppDetails",
            dataType: "json",
            type: "post"
        }
    },
    schema: {
        model: {
            id: "id",
            fields: { appName: { type: "string" } }
        }
    }
}),
showContactDetails: function (e) {
    this.appDetailsSource.sync();
    this.set("hasChanges", false);
}
});

如果我为'appName'和'id'提供有效值,则单击按钮,成功调用showContactDetails方法,调用appDetailsS​​ource.sync(),但似乎没有调用update方法,并且永远不会到达处理更新的服务器端URL。我做错了什么?

0 个答案:

没有答案