我已将我的 jquery 对话框内容放在一个 div 中。但是每当我以这种方式初始化对话框时:
$(".uof_add_form").dialog({
autoOpen : false,
height : 500,
width : 600,
modal : true,
buttons : {
"Done" : function() {
$(this).close();
}
}
});
内容从我的 div 中删除。因此我不能使用
$("#new_form").on("click",".add_level", function(){
var wrapper_data = $(this).parent().parent().parent().parent();
wrapper_data.find(".uof_add_form").dialog("open");
});
打开我的对话框。
由于我的内容是动态生成的,因此我需要使用$(this)
.
有什么方法可以让我的内容留在我的 div 中?
display:none
我更改了我的代码以通过这种方式在我的 div上进行的单击本身进行初始化:-
$("#new_form").on("click",".add_level", function(){
var wrapper_data = $(this).parent().parent().parent().parent();
wrapper_data.find(".add_level_pop").dialog({autoOpen : true, height : 500,width : 600,modal : true, buttons : { "Done" : function() { $(this).dialog('close'); } } });
});
对话框在第一次单击时打开,但在第二次单击时对话框不会被触发,因为内容已在对话框初始化时转移到不同的位置。
我还在jsfiddle上添加了一个示例,请在此处查看