使用jQueryUI对话框时提交操作被击中两次

使用jQueryUI对话框时提交操作被击中两次,jquery,asp.net-mvc-4,modal-dialog,Jquery,Asp.net Mvc 4,Modal Dialog,我正在使用JQuery和bootstrap编写一个ASP.NETMVC4应用程序 在我的网站上有一个模式对话框功能,以前一直工作顺利,直到最近,另一个开发者在网站上做了一些与样式相关的更改 以下是我在一个局部视图中编写的代码,我将在JQuery对话框中打开它: @using (Ajax.BeginForm("ChangeStatus", new AjaxOptions { UpdateTargetId = "AboutOrderContainer", HttpMethod = "POST

我正在使用JQuery和bootstrap编写一个ASP.NETMVC4应用程序

在我的网站上有一个模式对话框功能,以前一直工作顺利,直到最近,另一个开发者在网站上做了一些与样式相关的更改

以下是我在一个局部视图中编写的代码,我将在JQuery对话框中打开它:

@using (Ajax.BeginForm("ChangeStatus",
    new AjaxOptions { UpdateTargetId = "AboutOrderContainer", HttpMethod = "POST" }))
{
    @Html.HiddenFor(m => m.OrderId)
    <table class="row-fluid">
        <tr>
            <td></td>
        </tr>
        <tr>
            <td>
                Comments&nbsp;(Optional):
            </td>
        </tr>
        <tr>
            <td>&nbsp;</td>
        </tr>
        <tr>
            <td>
                @Html.TextAreaFor(m => m.Comments, new { @maxlength = 255, @rows=5 })
            </td>
        </tr>        
        <tr>
            <td>                
                <center>
                <input type="submit" title="OK" value="OK" class="btn" />
                    </center>
            </td>
        </tr>
    </table>        
}
我不确定这里出了什么问题。我已经尝试删除上面的js文件,即11号文件,但没有任何帮助。因此,在考虑解决方案时,您可以忽略上述文件的任何含义

有人知道吗?
再次重申,在其他开发人员更改某些样式功能之前,相同的代码工作得非常好。

听起来您可能会从脚本提交表单一次,然后由于浏览器的默认行为再次提交表单。尝试将其添加到处理程序的顶部:

event.preventDefault();

听起来您可能从脚本提交表单一次,然后又由于浏览器的默认行为再次提交表单。尝试将其添加到处理程序的顶部:

event.preventDefault();
您可以将输入类型=提交更改为输入类型=按钮

在这里,您将提交两次表单,一次是表单的默认行为,另一次是脚本中的行为。您可以更改输入类型=提交到输入类型=按钮


在这里,您提交了两次表格,一个是表单的默认行为,另一个是脚本的默认行为。我通过将jquery.unobtrusive-ajax.js文件更改为在提交按钮具有特定自定义属性时跳过异步调用来修复此问题。

我通过将jquery.unobtrusive-ajax.js文件更改为在提交按钮具有特定自定义属性时跳过异步调用来修复此问题属性。

否,这是一次命中操作。实际上,我注意到ecommercise-custom.js根本没有受到攻击。因此,您可以在考虑解决方案时忽略该文件。不,这是一次打击行动。实际上,我注意到ecommercise-custom.js根本没有受到攻击。因此,您可以在考虑解决方案时忽略该文件。这不起作用,我尝试将其添加到ecommercesite-custom.js文件中,但我可以看到该文件中编写的代码也没有受到影响。我仍然无法解释双重提交,但我注意到您的提交按钮有一个btn类,但是JavaScript中的选择器正在寻找一个包含btn submit的类,所以这就是为什么从来没有运行过btn submit的原因。是否有其他JavaScript在使用中,可能是针对不同的表单,但仍在运行?不,除了我上面提到的文件之外,没有其他JavaScript。所有这些文件都只是库文件。这不起作用,我尝试将其添加到ecommercesite-custom.js文件中,但我可以看到该文件中编写的代码也没有被点击。我仍然无法解释双重提交,但我注意到您的提交按钮有一个btn类,但是JavaScript中的选择器正在寻找一个包含btn submit的类,所以这就是为什么从来没有运行过btn submit的原因。是否有其他JavaScript在使用中,可能是针对不同的表单,但仍在运行?不,除了我上面提到的文件之外,没有其他JavaScript。所有这些都只是库文件。