Javascript 如何使jQuery ui对话框像警报或确认框一样停止浏览器处理?

Javascript 如何使jQuery ui对话框像警报或确认框一样停止浏览器处理?,javascript,jquery,jquery-ui,jquery-ui-dialog,Javascript,Jquery,Jquery Ui,Jquery Ui Dialog,当我的一个表单被提交时,用户可能会被重定向到两个页面中的任何一个,这取决于在表单的某个字段中输入的值。重定向由用户自行决定,因此我使用确认框。如果用户按下“Ok”键,他们会看到一页,如果按下“Cancel”,他们会看到另一页。不幸的是,在我的例子中,“是”和“否”按钮比“确定”和“取消”按钮更有意义。我使用jQuery的ui库中的对话框创建了一个新框,该框有“是”和“否”按钮,在提交表单时我会这样调用它: $("#myForm").submit(function() {..... 问题在于,它

当我的一个表单被提交时,用户可能会被重定向到两个页面中的任何一个,这取决于在表单的某个字段中输入的值。重定向由用户自行决定,因此我使用确认框。如果用户按下“Ok”键,他们会看到一页,如果按下“Cancel”,他们会看到另一页。不幸的是,在我的例子中,“是”和“否”按钮比“确定”和“取消”按钮更有意义。我使用jQuery的ui库中的
对话框
创建了一个新框,该框有“是”和“否”按钮,在提交表单时我会这样调用它:

$("#myForm").submit(function() {.....
问题在于,它只是在屏幕上闪烁,没有给用户足够的时间进行选择,而不像
确认
框那样,在用户做出选择之前阻止表单提交


是否有任何方法可以使
对话框
框停止表单提交,方法与
确认
框相同?我可以想出一些解决办法,但都要求我停止使用
$(“#myForm”)。submit(函数(){…

用普通按钮替换submit按钮怎么样并在对话框后手动发送表单。

PiTheNumber的一个优点是,您可能希望在对话框后发送表单。我认为它在没有给用户机会的情况下闪烁对话框的原因是dialog()方法是一种异步方法,因此在打开对话框时提交已经开始

然后,针对以下内容:

如果要指定特定按钮,可以将按钮选项传递到对话框:

$( ".selector" ).dialog({ buttons: { "Ok": function() { $(this).dialog("close"); } } })
这样,您可以指定自己的按钮文本、功能等

此外,您还可以将对话框设置为模式对话框,以防止用户在显示对话框时在屏幕上执行任何其他操作:

$( ".selector" ).dialog({ modal: true });

顺便说一句,这些示例来自于。到那边去看看。显然,您必须组合这些选项,并将它们一起传递给dialog().

你在寻找模式选项吗?@matino,我想他想完全停止表单提交。我不想这样做的原因是因为我在使用Grails,它提供了一个很好的
标记。我可以将其更改为标准的
标记,但由于某些原因,它的渲染效果不如Grails提供的那么好(即使我使用的是同一个类,长方体模型也太宽了)。