错误:初始化前无法在对话框上调用方法;试图调用方法';关闭';Jquery onclick按钮

错误:初始化前无法在对话框上调用方法;试图调用方法';关闭';Jquery onclick按钮,jquery,jquery-ui-dialog,Jquery,Jquery Ui Dialog,我的要求是打开对话框onclick Cancel按钮。单击“取消预订”后,应提交表单 使用以下代码,我得到了错误: 错误:初始化前无法在对话框上调用方法;试图调用方法“close” 我的部门是: <div id="dialog" title="Confirmation Required" style="display:none"> Are you sure about this? </div> 虽然我尝试了其他帖子对这个错误的建议,但无法摆脱这个

我的要求是打开对话框onclick Cancel按钮。单击“取消预订”后,应提交表单

使用以下代码,我得到了错误: 错误:初始化前无法在对话框上调用方法;试图调用方法“close”

我的部门是:

<div id="dialog" title="Confirmation Required" style="display:none">
            Are you sure about this?
</div>

虽然我尝试了其他帖子对这个错误的建议,但无法摆脱这个错误。任何帮助都是非常感谢的。谢谢

这是一个版本问题。将jqueryui 1.9.2与jQuery1.9.1一起使用,您就不会遇到问题。如果使用这两个版本的最新版本,效果会更好

用于我的测试

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js"></script>

您必须阻止“提交”按钮提交表单。将事件参数
e
添加到
onClick
中的函数中,并对其使用
preventDefault

$("#btnCxlJob").click(function(e) {
    var theDialog = $("#dialog").dialog();
    alert("clicked!");
    theDialog.dialog("open");
    e.preventDefault();
});
替换
document.JobConf.submit
$(“#”)一起提交。提交()


将其与分配给表单的id一起使用。如果是JobConf,代码将是
$(“#JobConf”).submit()

对话框按预期工作。检查页面是否只使用了一个版本的jquery和jquery ui对话框,以及它们是否是最新的。您尝试了哪些建议?我有以下脚本:涵盖jquery ui版本。您使用的是哪个jquery版本?很酷,这确实解决了错误。我会接受答案。但是,对话框窗口将打开,它不会等待我单击确认按钮并提交表单。对此有什么建议吗。非常感谢您在表单中使用“提交”按钮“取消”输入?是的,带有“取消”值的“输入提交”按钮在表单中Barry,e.preventDefault()起作用,但表单现在没有提交。表单有一个onsubmit函数,用于检查验证。如果我使用return false;它不执行取消操作,而是提交表单。还有什么建议吗?巴里,非常感谢你帮助我$(“#JobConf”).submit();提交表单,但在servlet中编写代码以检查执行预期处理的按钮name=“btnCxlJob”。在这里,表单正在提交,但取消操作不会执行,因为它取决于传递按钮名称属性。你能提出一个解决办法吗。再次感谢
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js"></script>
$("#btnCxlJob").click(function(e) {
    var theDialog = $("#dialog").dialog();
    alert("clicked!");
    theDialog.dialog("open");
    e.preventDefault();
});