我的要求是打开拨号点击取消按钮。一旦取消预订'单击,表单应该提交。
使用以下代码,我收到错误: 错误:在初始化之前无法调用对话框上的方法;试图调用方法'关闭'
我的div为:
<div id="dialog" title="Confirmation Required" style="display:none">
Are you sure about this?
</div>
按钮为:
<input type="submit" id="btnCxlJob" name="btnCxlJob" value="Cancel" />
在document.Ready中:
$("#dialog").dialog({
resizable: false,
height: 140,
modal: true,
autoOpen: false,
buttons: {
'Cancel the Reservation': function() {
$(this).dialog('close');
document.JobConf.submit;
},
'Cancel': function() {
$(this).dialog('close');
}
}
});
$("#btnCxlJob").click(function() {
var theDialog = $("#dialog").dialog();
alert("clicked!");
theDialog.dialog("open");
});
虽然我尝试了其他帖子的建议,但是无法摆脱这个错误。非常感谢任何帮助。谢谢
答案 0 :(得分:0)
这是一个版本问题。使用jqueryui 1.9.2和jquery 1.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>
答案 1 :(得分:0)
您必须阻止提交表单的提交按钮。将事件参数e
添加到onClick
中的函数,并在其上使用preventDefault
。
$("#btnCxlJob").click(function(e) {
var theDialog = $("#dialog").dialog();
alert("clicked!");
theDialog.dialog("open");
e.preventDefault();
});
将document.JobConf.submit;
替换为$("#<id of the form>").submit();
将其与分配给表单的ID一起使用。如果是JobConf,则代码为$("#JobConf").submit();
。