javascript - 使用javascript在MVC3中验证表单

标签 javascript asp.net-mvc-3 validation

我只需要一个验证示例。剩下的我会做的。假设我有一个文本类型的输入:

 <p>                          
<label for="ClientName">ClientName:</label> <%= Html.TextBoxFor(model => model.Name)%>         
 </p>        

这里我想验证必填字段的文本框。我想要 JavaScript 中的这个必填字段验证函数,并且我想在 View 中使用这个脚本。

最佳答案

您是否考虑过使用非侵入式验证?

您说您正在使用 MVC3(尽管显然不是 Razor View 引擎)。

使用这样的代码:<p><label for="ClientName">ClientName:</label> <%= Html.TextBoxFor(model => model.Name)%></p> 可以写成 <p>@Html.LabelFor(model=>model.Name) @Html.TextBoxFor(model => model.Name) </p>在 Razor 语法中。

如果你把它放在你的 web.config 中:

<appSettings>
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>

然后用类似这个数据注释的东西装饰模型中的属性:

[Display(Name = "Name")]
[Required(ErrorMessage = "Name is required")]
public string Name { get; set; }

然后将以下内容添加到您的 _Layout.cshtml 中文件你将得到不引人注目的验证工作:

<script src="@Url.Content("~/Scripts/jquery-1.7.1.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>

然后您可以将此添加到页面的某处(您希望显示验证消息的位置):@Html.ValidationMessageFor(model=>model.Name)

关于javascript - 使用javascript在MVC3中验证表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9497226/

相关文章:

javascript - 识别列表项索引 - 哪种方法更好?

asp.net-mvc-3 - 如何在不创建新路由的情况下为 Controller 设置自定义 URL 路径?

php - 如何从父选择 PHP 填充子下拉菜单

javascript - overflow-y scroll 和 jquery 出现

javascript - 没有从 promise 中抛出 Angular 错误最终被阻止

c# - 使用 C# 返回 JSON,如 PHP json_encode

javascript - 从 JavaScript 值分配模型属性值

java - 如何验证具有不同属性要求不同方法调用的spring模型对象?

java - 在应用程序初始化时进行必要和充分的验证

javascript - 单击 React 中的另一个元素后如何将 className 更改为元素