【问题标题】:Jquery Dialog opening multiple times when contains textfield, textareas etc当包含文本字段、文本区域等时,Jquery 对话框会多次打开
【发布时间】:2017-09-08 12:51:07
【问题描述】:

由于某种原因,当我打开一个包含输入类型的对话框时,它会打开多个对话框。

这是我的代码:

    var addTagsDialog = $("<p>This is just a test tag</p> <br /><input type='text' />");

    addTagsDialog.dialog({
      buttons: {
        "Update": function () {
          console.log('Update Func Run');
        }
      },
      Cancel  : function () {
        addTagsDialog.dialog('destroy').remove();
      }
    });

这是一个小提琴:https://jsfiddle.net/jrrxxbdg/

如果我拿出来:

  <br /><input type='text' />

然后它只打开一个对话框模式。

我正在使用这些版本:

  • jQuery 1.9.1
  • jquery-ui-1.9.2

谁能明白为什么会这样?

我在另一个问题上读到,这可能是因为我在使用模态后并没有破坏它们,但是每次我使用我添加的模态时

dialog('destroy').remove();

这并没有解释它是如何在 JSFiddle 中复制的。

有什么想法吗?

【问题讨论】:

    标签: jquery jquery-ui dialog


    【解决方案1】:

    您需要将所有内容包装到 DIV 中。当您以这种方式创建元素时,您将创建一个包含 4 个独立元素(&lt;p&gt;textElement&lt;br&gt;&lt;input&gt;)的 jQuery 集合。然后它为每个人创建一个对话框。

    用途:

    var addTagsDialog("<div><p>This is just a test tag</p> <br /><input type='text' /></div>");
    

    【讨论】:

    • 谢谢。我不知道。
    猜你喜欢
    • 1970-01-01
    • 2020-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-14
    相关资源
    最近更新 更多