使用KnockoutJS模板绑定jQuery UI确认对话框

前端之家收集整理的这篇文章主要介绍了使用KnockoutJS模板绑定jQuery UI确认对话框前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我将如何使用jQuery UI对话框确认是否要从KnockoutJS模板中的列表中删除一行?

就像我看到的那样,Knockout演示显示了一个模板,它将每行渲染成一个网格.
删除按钮调用viewmodel.remove()函数传递到要删除的行的对象.在remove()函数中,this.Gifts.Remove()被调用,并将作为参数传递给函数的数据.

我的问题是我想显示一个jQuery对话框来询问是否删除一行. JQuery对话框基于预先设置对话框及其删除功能的设置功能.

当我点击模板中的删除链接时,它打开对话框ok,但是如何将模板数据传递到对话框删除功能中,因为它现在完全与模板机制分离了?

解决方法

我假设对话框来自jQuery UI.如果是这样,那么你的删除将看起来像这样:
removeItem: function(item) {
    $( "#dialog-confirm" ).dialog({
        resizable: false,height:140,modal: true,buttons: {
            "Delete item": function() {
                $(this).dialog("close");
                viewmodel.items.remove(item);
            },Cancel: function() {
                $(this).dialog("close");
            }
        }
    });
}

因此,“删除项目”按钮将关闭对话框,并从您的observableArray中删除您的项目.

工作示例如下:http://jsfiddle.net/rniemeyer/CLxsV/

编辑:使用绑定更好的示例:http://jsfiddle.net/rniemeyer/WpnTU/

猜你在找的jQuery相关文章