简单模式弹出后数据绑定不起作用

发布于 2024-11-18 00:29:32 字数 936 浏览 2 评论 0原文

请考虑以下代码(也在 this fiddle 中):

var viewModel = {
    count:ko.observable(0),
    add:function (){
    this.count(this.count()+1);
        },
    popup:function (){
    $.modal($("#divPopup"));
    }
}

ko.applyBindings(viewModel);

以及相应的视图:

<button id="btnAdd" data-bind="click:add">Add</button>
<button id="btnPopup" data-bind="click:popup">Popup</button>
<div id="divPopup">
    <span data-bind="text:count"></span>
</div>

现在:

  1. 单击添加按钮
  2. 单击弹出按钮
  3. 单击模式窗口的右上角(抱歉我不能有“x”图像)
  4. 添加按钮不起作用

我无法使用:

$.modal($("#divPopup").html());

因为在我的应用程序中,html 在以下情况下不会呈现$.modal()

或者把它作为另一个问题:当我的 viewModel 发生变化时,我如何知道 html 渲染何时完成?

Please consider the following code (also in this fiddle):

var viewModel = {
    count:ko.observable(0),
    add:function (){
    this.count(this.count()+1);
        },
    popup:function (){
    $.modal($("#divPopup"));
    }
}

ko.applyBindings(viewModel);

And this corresponding View:

<button id="btnAdd" data-bind="click:add">Add</button>
<button id="btnPopup" data-bind="click:popup">Popup</button>
<div id="divPopup">
    <span data-bind="text:count"></span>
</div>

Now:

  1. click Add button
  2. click Popup button
  3. click top right corner of modal window (sorry I can't have "x" image)
  4. Add button don't work

I can't use:

$.modal($("#divPopup").html());

Because in my app html does not render when $.modal().

Or to put it as another question: how I can know when html render was completed when my viewModel changed?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦巷 2024-11-25 00:29:32

尝试将 persist: true 传递给 modal() 的选项,例如:

$("#divPopup").modal({ persist: true });

http://jsfiddle.net/rniemeyer/BxVF9 /

Try passing persist: true in for the options to modal() like:

$("#divPopup").modal({ persist: true });

http://jsfiddle.net/rniemeyer/BxVF9/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文