使用xval进行C#mvc2客户端表单验证,防止发布

Rob*_*Rob 5 javascript c# validation asp.net-mvc xval

我正在使用xval在我的asp.net mvc2 web应用程序中使用客户端验证.尽管我在数字字段中输入文本时会出现错误,但它仍然会尝试将表单发布到数据库中.错误的值将被替换为0并保存到数据库中.但相反,甚至不可能尝试提交表格.有人可以帮我从这里出去吗?

我已将属性设置如下:

[Property]
[ShowColumnInCrud(true, label = "FromPriceInCents")]
[Required]
//[Range(1, Int32.MaxValue)]
public virtual Int32 FromPriceInCents{ get; set; }
Run Code Online (Sandbox Code Playgroud)

捕获请求的控制器如下所示; 我在这部分没有错误.

[AcceptVerbs(HttpVerbs.Post)]
[Transaction]
[ValidateInput(false)]
public override ActionResult Create()
{
  //some foo happens
}
Run Code Online (Sandbox Code Playgroud)

我的观点如下:

<div class="label"><label for="Price">FromPrice</label></div>
<div class="field">
<%= Html.TextBox("FromPriceInCents")%>
<%= Html.ValidationMessage("product.FromPriceInCents")%></div>
Run Code Online (Sandbox Code Playgroud)

在视图的最后,我有以下规则,在html代码中生成正确的验证规则

<%= Html.ClientSideValidation<Product>("Product") %>
Run Code Online (Sandbox Code Playgroud)

我希望有人可以帮助我解决这个问题,提前谢谢!

编辑:4月19日我刚刚发现有一个正常的按钮被使用而不是输入类型="按钮"这可能是问题吗?

<button class="save" type="submit" name="save"><span>Opslaan</span></button>
Run Code Online (Sandbox Code Playgroud)