我正在使用ASP.Net MVC并实现不显眼的javascript以进行表单验证。这是我的代码:
@{
AjaxOptions options = new AjaxOptions
{
HttpMethod = "Post",
LoadingElementId = "ProcessingMessageContainer",
Url = @Model.SaveUrl,
OnBegin = "OnBegin",
OnSuccess = "OnSaveSuccess",
OnFailure = "OnSaveFailure",
OnComplete = "OnComplete",
};
}
<div id="DataEntryFormContainer">
@using (Ajax.BeginForm(options))
{
[form here]
}
</div>
问题是当我按下提交按钮时,在服务器上处理实际提交之前重新加载表单。所以,这是一个糟糕的用户体验。表单数据将传递到服务器并进行相应处理。如何在用户按下提交按钮后重新加载数据输入表单?感谢。
答案 0 :(得分:0)
听起来你没有在Web.config文件中打开客户端验证和不引人注意的JavaScript。
仔细检查Web.config中是否包含这两行:
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
答案 1 :(得分:0)
我明白了。我以某种方式绑定了2个不同的动作来提交按钮。它正在提交表单并请求原始页面。我通过使用firebug观看控制台来捕获它。每次我提交表单时,我都会看到2个服务器请求:1个提交表单的帖子和1个用于检索表单的帖子。感谢大家的帮助。