【发布时间】:2010-03-23 13:40:10
【问题描述】:
我的对话框有以下代码,其中包含一个下拉字段
KPMS.ServiceRequests.Status = {
showOptions : function(requestId, userId, requestType) {
var url = BASE_URL+'service_requests/status_options/';
$("#dialog-modal").dialog("destroy");
$("#dialog-modal").load(url, {"request_id": requestId, "user_id": userId, "request_type":requestType}).dialog(
{
modal: true,
title: "Update Status",
buttons: {
Cancel : function() {
$(this).dialog('close');
},
Update: function() {
alert(1);
}
}
}
);
}
}
有一个锚标记来填充对话框
<a onclick="KPMS.ServiceRequests.Status.showOptions(9, 11, 'SR'); return false;" title="Update status" href="http://localhost/kitco/pms/#9"><img alt="[E]" title="Update" src="http://localhost/kitco/pms/images/edit.png"></a>
我的问题是当我第一次单击链接时,对话框会正确填充。 然后我使用取消按钮关闭了对话框,然后再次单击链接打开对话框并关闭它。 第三次点击链接时出现以下 Javascript 错误,并且对话框未打开
Error: b("<div></div>").addClass("ui-widget-overlay") is undefined
Source File: http://localhost/kitco/pms/js/jquery-ui-1.8rc3.custom.min.js
Line: 199
如何解决这个问题?
【问题讨论】:
-
您应该使用未最小化的 jQuery 版本来帮助调试。另外,请尝试使用一个调试器(如 firebug 或 IE8 内置的调试器),它可以让您跟踪调用堆栈。
标签: javascript jquery jquery-ui dialog widget