当包含文本字段、文本区域等时,Jquery 对话框会多次打开
Posted
技术标签:
【中文标题】当包含文本字段、文本区域等时,Jquery 对话框会多次打开【英文标题】:Jquery Dialog opening multiple times when contains textfield, textareas etc 【发布时间】: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 中复制的。
有什么想法吗?
【问题讨论】:
【参考方案1】:您需要将所有内容包装到 DIV 中。当您以这种方式创建元素时,您将创建一个包含 4 个独立元素(<p>
、textElement
、<br>
、<input>
)的 jQuery 集合。然后它为每个人创建一个对话框。
用途:
var addTagsDialog("<div><p>This is just a test tag</p> <br /><input type='text' /></div>");
【讨论】:
谢谢。我不知道。以上是关于当包含文本字段、文本区域等时,Jquery 对话框会多次打开的主要内容,如果未能解决你的问题,请参考以下文章