我的网页验证仅适用于本地服务器。
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验证工作中完全退出时。
问题是,当我将文件上传到托管位置之外时,验证根本无效。点击提交按钮后没有任何反应。我尝试了很多解决方案,没有任何帮助。
答案 0 :(得分:0)
您错过了@Url.Content
脚本文件src
在标题端尝试使用此代替脚本文件。 使用耕种字符
<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并配置匹配的webconfig文件与本地!
答案 1 :(得分:0)
我发现问题出在其他地方。我试图验证我自己的模型,它正常工作。唯一的问题是,使用Linq to SQL文件验证的网站只能在本地服务器上使用。