0

我通常会在我的问题中包含很多代码,但我不确定我应该在其中包含什么!

我在表格中有一个用户列表,我一次只显示 10 个用户,使用 tablesorter 寻呼机(分页)插件http://tablesorter.com/docs/example-pager.html

在每一行中,每个用户都有一个删除按钮。当您单击删除按钮时,会弹出一个对话框“您要删除此用户等等等等...” http://jqueryui.com/demos/dialog/

我遇到的问题是,当我转到表格分页的第 2 页(或任何其他不是第一个页面)时,jQuery 对话框不会“触发”,您可以在没有对话框警告的情况下删除用户。

有没有人有串联使用这两个插件的经验,或者当我通过分页移动到新页面时,我需要调用某种函数来“刷新” UI 插件。

总而言之:tablesorter/pager 按预期工作,jQuery UI 对话框按预期工作,但 jQuery UI 对话框在分页器上不是 1 的页面上时不会加载。

希望这是有道理的,如果有任何人需要帮助我解决这个问题的任何其他信息/代码,请询问,我会添加。

编辑

这是调用对话框的脚本。

<script type="text/javascript">
    $('#dialog-confirm').hide();
        $('.delete-recip').bind('click',function(e){
            e.preventDefault();
            var targetUrl = $(this).attr("href");
        $( "#dialog-confirm" ).dialog({
                resizable: false,
                height:140,
                modal: true,
                buttons: {
                    "&{'recipientlist.DeleteUserButton'}": function() {
                        $( this ).dialog( "close" );
                        window.location.href = targetUrl;
                    },
                    &{'recipientlist.DeleteUserCancel'}: function() {
                        $( this ).dialog( "close" );
                    }
                }
            });
    });

 });
</script>
4

1 回答 1

3

需要将函数委托给静态元素......分页元素是在 DOM 之后创建的,因此它们不会绑定任何事件。

使用 jQuery 1.7 的委托.on()->

 $(document).on('click', '.delete-recip', function(){ 
   // copy function code here
 }); 
于 2012-07-27T15:35:35.320 回答