ValidationMessageFor 不起作用
本文关键字:不起作用 ValidationMessageFor | 更新日期: 2023-09-27 18:33:17
我的网页验证仅在本地服务器上工作。
Web.Config 包括
<add key="webpages:Enabled" value="true" />
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
View.cshtml include
<script src="../../Scripts/jquery-1.9.1.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.validate.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.validate.unobtrusive.min.js" type="text/javascript"</script>
@using (Html.BeginForm("ViewName", "ControllerName")) {
@Html.ValidationMessageFor(model => model.email, null, new { @class = "validation" })
<input type="submit" value="log in" class="submitbutton" />
}
我正在使用Linq to SQL。文件包含
使用System.ComponentModel.DataAnnotations;
和与此类似的字段
[Required(ErrorMessage = "* error message")]
public string email
...
当我从Visual Web Developer Express 2010中解散时,验证工作完美。
问题是当我将文件上传到外部托管位置验证时根本不起作用。单击提交按钮后没有任何反应。我尝试了很多解决方案,但没有任何帮助。
您错过了脚本文件 src 的@Url.Content
尝试此操作,而不是标头端的脚本文件。 使用平铺字符
<script src="@Url.Content("~/Scripts/jquery-1.9.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>
编辑:您错过了上一个脚本上的关闭标记
<script src="../../Scripts/jquery.validate.unobtrusive.min.js" type="text/javascri**pt"</**script>
这只是路径或任何简单的错误问题,检查服务器上的路径
其他解决方案:
1)检查您的css路径并部署服务器上的所有文件?
2)检查 Jquery 库是否已添加到您的布局页面中。
3)您是否在页面或布局中调用了css文件?
4)请检查您的服务器是否已部署所有脚本和CSS,并配置了与本地匹配的Web配置文件!
我发现问题出在其他地方。我尝试验证自己的模型,它工作正常。唯一的问题是,在Linq to SQL文件中使用验证的网站仅适用于本地服务器。