jquery – applyBindings()太快,在Ajax请求完成之前调用

请考虑以下viewmodel代码段:
var id,given1,given2;

$.get("testSynUfget.aspx",null,function (data) {
    id = data.id;
    given1 = data.given1;
    given2 = data.given2;
},'json');
//alert('here');
ko.applyBindings(new viewmodel(id,given2));

似乎我通过$.get调用ajax太慢或者ko.applyBindings()太快了.无论哪种方式,如果我取消注释线警报(‘here’),似乎敲门只能正确绑定.

如果我留下评论,则不会填充任何控件.

任何想法,伙计们?

我能想到的唯一工作是将.applyBindings作为$.get中函数回调的一部分,如下所示:

$.get("testSynUfget.aspx",function (data) {
    ko.applyBindings(new viewmodel(data.id,data.given1,data.given2));
},'json');

解决方法

您的解决方法是正确的做事方式.这是您的’sucess’处理程序,在返回数据时调用该处理程序,这是正确的点,然后填充视图模型并应用绑定.

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: <span id=&quot...
jQuery 添加水印 <script src="../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...