我正在使用以下代码动态创建jQuery UI Dialog小部件:
$(function () {
var Selector = $("a:contains('sometext')");
$(Selector).bind('click', function () {
var NewDialog = "<div dir=rtl id='MenuDialog'></div>";
var DialogContetn = '<div dir=rtl ><table width=100%><tr><td><textarea id="txtRequestContent" cols="30" rows="2"></textarea></td><td><table><tr><td><input id="btnSendEditionRequest" type="button" value="Send" /></td></tr><tr><td><input id="btnCloseDialog" type="button" value="Cancel" /></td></tr></table></td></tr></table></div>';
$('body').append(NewDialog);
$('#MenuDialog').html(DialogContetn);
$('#MenuDialog').hide();
$('#MenuDialog').dialog({ modal: true, title: "title", show: 'clip', hide: 'clip' });
$("#btnCloseDialog").live('click', function () {
$("#MenuDialog").dialog('close');
});
return false;
});
});
第一次加载时,jQuery对话框正常工作,当我点击btnCloseDialog时,jQuery对话框可以成功关闭。
但是,在此之后,btnCloseDialog不再关闭对话框。为什么会发生这种情况?
更新:
我将我的代码放在 jsfiddle 上。
这是奇怪的行为,因为该按钮可以在jsFiddle上正确关闭对话框,但在我的项目中则不行。