gpt4 book ai didi

c# - 通过 ajax 加载的 ASP.NET MVC 表单多次提交

转载 作者:太空狗 更新时间:2023-10-29 21:24:53 24 4
gpt4 key购买 nike

我有一个包含 ajax 表单的局部 View 。此部分 View 通过 ajax 调用加载到我的页面上。我可以编辑字段并提交表单,一切正常。但是,如果我重新加载表单 N 次,则在单击保存按钮时表单将提交 N 次。

这里是局部 View 的代码....

@model blah blah...

<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")"type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript</script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")"type="text/javascript"></script>

<div id="modalForm">
@using (Ajax.BeginForm("Edit", "Info", new{id = Model.UserId}, AjaxOptions{OnSuccess = "infoUpdate" }))
{


//FORM FIELDS GO HERE

<input type="submit" value="Save" />


}
</div>

我做错了什么导致了这种行为?

最佳答案

每次您重新加载表单时,都会放置一个用于提交表单的触发器。因此,如果您重新加载表单 n 次,则您有 n 次提交。

如果可能,请尝试只加载一次表单。

当您点击提交按钮时,您可以尝试取消绑定(bind)提交触发器:

<input type="submit" value="Save" onClick="submitForm()" />

var submitForm = function() {
$("#formAddressShipping form").trigger('submit');
$("#formAddressShipping form").unbind('submit');
return false;
};

关于c# - 通过 ajax 加载的 ASP.NET MVC 表单多次提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4869583/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com