刷新Jquery对话框内容+ JSF



我需要显示一个记录表,在每一行,有一个锚标记点击将打开一个Jquery对话框。当我单击每行的链接时,对话框成功打开(目前,我有两行,并且已经硬编码了锚和div标签的id,我需要使它们动态)。无论如何,一旦对话框打开,我可以选择取消和勾选某些复选框,我做了一些更新。更新应该在父窗口上得到反映,这很好。但是,当我再次打开对话框时,它在进行更新之前打开初始数据,而不是显示更新后刷新的对话框。此外,它开始抛出错误消息,说"在初始化之前不能在对话框上调用方法;试图调用方法'close'"

  $("#vendoradmin-artnodesearch-popup-0").dialog(opt).dialog("open");});
 $("#vendoradmin-artnodesearch-popup-0").dialog(
               {
                autoOpen : false,
                modal : false,
                resizable : false,
                height : 500,
                width : 750,
                buttons : [{
                text: "Submit", 
                click : function() {
                    var selNodes = "";
                  $('#artNodeAvailListId-0 input:checkbox:checked').each(
                     function() {
                        selNodes += $(this).val() + ",";
                      });

                  $("#frmAssignArticleHierarchy\:hdnArticleNodeIds").attr("value",
                  selNodes);
                     frmAssignArticleHierarchy["frmAssignArticleHierarchy:btnRefreshArticleFilter"]
                 .click();
                  $(this).dialog("close");
                 }
             }]
         });
       };

问题是当你关闭对话框时,实际上它并没有删除对话框中的数据,所以当它再次显示时,它会显示已经存在的数据,所以你需要添加一个关闭选项来删除#vendoradmin-artnodesearch-popup-0内容,只需检查jquery对话框的api,你就可以找到这样做的代码。

$("#vendoradmin-artnodesearch-popup-0").dialog(
               {
                autoOpen : false,
                modal : false,
                resizable : false,
                height : 500,
                width : 750,
close: function(){//add code to remove the data in vendoradmin-artnodesearch-popup-0}
                buttons : [{
                text: "Submit", 
                click : function() {
                    var selNodes = "";
                  $('#artNodeAvailListId-0 input:checkbox:checked').each(
                     function() {
                        selNodes += $(this).val() + ",";
                      });

                  $("#frmAssignArticleHierarchy\:hdnArticleNodeIds").attr("value",
                  selNodes);
                     frmAssignArticleHierarchy["frmAssignArticleHierarchy:btnRefreshArticleFilter"]
                 .click();
                  $(this).dialog("close");
                 }
             }]
         });
       };

$("#vendoradmin- artnoresearch -popup-0")是您在飞行中创建的元素吗?你是否封装了你的对话框id ?你可以使用。ui-dialog作为前面的选择器吗?这些id是唯一的吗?

  click: function () {
     var selNodes = "";
     $('.ui-dialog #artNodeAvailListId-0 input:checkbox:checked').each(
     function () {
         selNodes += $(this).val() + ",";
     });

     $("#frmAssignArticleHierarchy\:hdnArticleNodeIds").attr("value",
     selNodes);

     $(this).dialog("close");

我想你可能有冲突的id

相关内容

  • 没有找到相关文章

最新更新