我的jquery对话框中存在问题,因为它仅在第三次单击后才会打开。有人可以帮忙吗?这是片段。当自动打开设置为true时,它可以工作。但它使用auto open true会产生另一个问题。我不知道我的代码有什么问题。在每次单击时,都会调用此特定函数。 感谢。
function attachmentDialogBox(objId){
var parentDiv = objId;
if(parentDiv!=''){
var source = $("#"+parentDiv+" input[name=sourceId]").val();
var type = $("#"+parentDiv+" input[name=typeId]").val();
}
else{
var source = $("input[name=sourceId]").val();
var type = $("input[name=typeId]").val();
}
$.ajax({
url:"${createLink(controller: "fileAttachment",action: "rAttachmentDialog")}",
data:{id:"${id}",module:"${module}",moduleType:"${moduleType}",source:"${source}",sourceId:source,attachmentUrl:"${attachmentUrl}",multiple:"${multiple?:1}",type:type},
type:"post",
success:function(data){
$("#attachDocument").html(data);
$("#attachDocument").dialog({
title:"${module=="memberProfilePic"?"Upload Profile Image":"Attach Document"}",
zIndex:1103,
modal:true,
autoOpen:false,
width:"${module=="memberProfilePic"?355:"auto"}",
resizable:false,
draggable:false,
close:function(){
$("#attachDocument").remove();
$("#dialogContainer").append("<div id='attachDocument'></div>");
}
});
alert($("#attachDocument").val);
$("#attachDocument").dialog('open');
}
});
return false;
}
答案 0 :(得分:0)
尝试将其改为:
var dialog $("#attachDocument").dialog({...});
dialog.dialog("open");
我不完全确定$()。dialog()返回实例,但如果确实如此,它应该是一个更安全的方法
已更改为通过评论中的建议找到的解决方案。