使用jQuery ui对话框显示时第二次看不到表单值

时间:2012-06-08 14:06:58

标签: jquery-ui

我在jquery对话框中显示一些表单数据。我第一次这样做时一切正常。我可以在对话框中看到“my value”字符串。如果我第二次再次重新打开对话框,则表单值不再可见。查看此jsfiddle以自行试用。这是代码:

var dialog;

$("#b1").click(function(){
dialog = $("<div></div>").html("<p><input id='input1' type='text'></p>").dialog({
    autoOpen:false,
});
$("#input1").val("my value");
dialog.dialog("open");
});

只有在动态添加html标签时才会出现此错误。如果我使用静态html块一切正常。知道这里有什么问题吗?谢谢!

1 个答案:

答案 0 :(得分:1)

那是因为你没有摧毁旧的

<input id='input1' type='text'>

所以当你打电话时

$("#input1").val("my value");

它设置第一个

的值
<input id='input1' type='text'> 

它在DOM中找到。