【发布时间】:2016-01-04 19:08:37
【问题描述】:
我使用的是 ASP.NET MVC 剃须刀和 JQuery。我有以下型号。
public class Employee
{
public string Id { get; set; }
public string Name { get; set; }
[Required]
public int Number { get; set; }
}
我将其渲染为表格。数字字段是可编辑的输入字段。可以在表格中添加和删除行。添加一行时,数字字段为空,可以分配一个数字。
@model List<Models.Employee>
<thead>....
</thead>
<tbody>
@for (int i = 0; i < Model.Count; i++)
{
<tr>
<td>...
<td>
@Html.TextBoxFor(m => m[i].Number, new { @id ="", @title = "Number", @class = "textBox", @autocomplete = "false"})
@Html.ValidationMessageFor(m => m[i].Number)
</td>
</tr>
}
</tbody>
如果数字列中的所有数字都是唯一的,我想在保存之前验证。我正在使用 JQuery 不显眼的验证。我在 MVC 中没有看到 [Unique] DataAnnotation?我想知道验证表中的所有数字字段是否唯一以及如何将其与表单验证联系起来的最佳方法是什么,即如果存在非唯一值,表单验证应该失败。我所需要的只是客户端验证。
【问题讨论】:
-
对不起,所有员工都在视图中的桌子上。我检查的服务器端没有任何内容。我只需要客户端验证。
-
你想检查这个数字在数据库中是否唯一,对吧?
-
尝试处理 form.submit 事件并使用 javascript 自己检查值。您不需要对此进行不显眼的验证
-
你还应该检查服务器端。
标签: jquery asp.net-mvc validation asp.net-mvc-4