- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
项目:
网络配置:
<appSettings>
<add key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
型号:
[Validator(typeof(ContactValidator))]
public class ContactViewModel {
[DisplayName("Name:")]
public string Name { get; set; }
[DisplayName("Phone:")]
[DataType(DataType.PhoneNumber)]
public string Phone { get; set; }
[DisplayName("eMail:")]
[DataType(DataType.EmailAddress)]
public string eMail { get; set; }
[DisplayName("Message:")]
public string Message { get; set; }
}
验证器:
public class ContactValidator : AbstractValidator<ContactViewModel> {
public ContactValidator() {
RuleFor(x => x.Name)
.NotEmpty().WithMessage("Please provide a name.")
.Length(2, 255).WithMessage("Please provide a name of some substantial length.");
RuleFor(x => x.Phone)
.NotEmpty().WithMessage("Please enter a valid 10-digit phone number.")
.Length(12, 12).WithMessage("Phone number must be in the form of “123-456-7890”")
.Matches(@"^\d{3}-\d{3}-\d{4}$").WithMessage("Phone number must be a valid 10-digit phone number with dashes, in the form of “123-456-7890”");
RuleFor(x => x.eMail)
.NotNull().WithMessage("Please provide an eMail address.")
.EmailAddress().WithMessage("Please provide a valid eMail address to recieve the download link at.");
RuleFor(x => x.Message)
.NotNull().WithMessage("Please provide a message.")
.Length(2, 4000).WithMessage("Please provide a message of some substantial length.");
}
}
Controller :
[HttpGet]
public ActionResult Contact() {
var model = new ContactViewModel() { };
return View(model);
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Contact(ContactViewModel model) {
if(ModelState.IsValid) {
return View("Index");
}
return View(model);
}
查看:
@using(Html.BeginForm()) {
@Html.AntiForgeryToken()
<ul><li>All fields are required.</li></ul>
<fieldset>
@Html.LabelFor(model => model.Name, htmlAttributes: new { @class = "control-label" })@Html.EditorFor(model => model.Name, new { htmlAttributes = new { @class = "form-control", maxlength = "255" } })
@Html.ValidationMessageFor(model => model.Name, "", new { @class = "text-danger" })
@Html.LabelFor(model => model.Phone, htmlAttributes: new { @class = "control-label" })@Html.EditorFor(model => model.Phone, new { htmlAttributes = new { @class = "form-control", maxlength = "12" } })
@Html.ValidationMessageFor(model => model.Phone, "", new { @class = "text-danger" })
@Html.LabelFor(model => model.eMail, htmlAttributes: new { @class = "control-label" })@Html.EditorFor(model => model.eMail, new { htmlAttributes = new { @class = "form-control", maxlength = "255" } })
@Html.ValidationMessageFor(model => model.eMail, "", new { @class = "text-danger" })
@Html.LabelFor(model => model.Message, htmlAttributes: new { @class = "control-label" })@Html.TextAreaFor(model => model.Message, new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.Message, "", new { @class = "text-danger" })
<label class="control-label"> </label><button type="submit" value="Save" title="Save" class="btn btn-primary glyphicon glyphicon-send"></button>
</fieldset>
}
布局 View :
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Lawyer Case | @ViewBag.Title</title>
@Styles.Render("~/Content/bootstrap")
@Styles.Render("~/Content/lightbox")
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/bootstrap")
@Scripts.Render("~/bundles/inputmask")
@Scripts.Render("~/bundles/lightbox")
</head>
<body>
<div class="navbar navbar-blue navbar-fixed-top">
<div class="container">
<header class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<h1>@Html.ActionLink("Lawyer Case", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })</h1>
</header>
<nav class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li>@Html.ActionLink("Home", "Index")</li>
<li>@Html.ActionLink("Contact Us", "Contact")</li>
</ul>
</nav>
</div>
</div>
<main class="container body-content">
@RenderBody()
</main>
<footer class="container">
<hr />
<p>Site Contents © @DateTime.Now.Year - Lawyer Case.<br />Site Design & Development © @DateTime.Now.Year - Eclipse Computing Ltd.</p>
</footer>
@RenderSection("scripts", required: false)
</body>
</html>
我把 @Scripts.Render("~/bundles/jqueryval")
放在哪里没关系,验证对客户端都不起作用 < strong>OR 服务器端。只是有点迷惑...
如果我只是点击表单上的“提交”而根本没有填写它,它应该让我返回到联系页面和表单,因为 ModelState.IsValid
应该 false
,但显然不是——我得到的是索引页,它告诉我验证不是正确验证,因为表单为空 ModelState.IsValid = true
。为什么,我不知道。
最佳答案
根据文档 here .
您需要配置与 MVC 的集成 - 通常在 Global.asax.cs
Application_Start()
中
FluentValidationModelValidatorProvider.Configure();
关于asp.net - 一切就绪,但验证不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36850041/
嗨,这是我在这里的第一个问题,所以如果由于某种原因不遵守规则,结果是重复的或其他什么,请友好地告诉我(并不是说我首先会失去任何声誉) 无论如何,关于 Java 提供的此类 StringReader,我
我继承了这段代码,它似乎不是最优的,而且可能不正确,因为它在窗口和文档对象上添加了事件监听器。但是,除黑莓5.0外,它都可以正常工作。有人可以解释一下所有这些设置是否正确,或者是否有任何建议可以使其更
我被要求在第三方网站上执行维护,我可以编辑 JavaScript,但不能编辑后端代码。该站点使用一个插件,可以在 jQuery.ready 调用中设置各种样式和事件。我想停止它而不引起错误。我可以在模
在下面的代码片段中: Get Started! $(document).ready(function() { $('#indexGet
我有一个包含多个 html 文件的 phonegap 应用程序,对于每个 html 文件,我都有 js.file。在每个 js 文件中,我都添加了一个 eventListener,如下所示: func
您好,我正在尝试创建一个书签,它会打开一个网页,在该网页上找到一个下载链接,然后关闭该网页。除非有更好的方法,否则我将打开页面,调用 ready(我认为这是无效的部分),然后搜索下载链接。导入jQue
关于我的问题:Validate dynamically added control 我们是否应该始终在 javascript 上使用 ready 函数? 最佳答案 一个人应该只有在保证这样的操作有效并
以下两种情况给我相同的行为。但是技术上有什么区别? (我把下面的代码放在正文中脚本标签的最后一部分。) $(document).ready(function() { $('.collapse').
我的程序使用共享内存作为数据存储。此数据必须可供任何正在运行的应用程序使用,并且必须快速获取此数据。但是一些应用程序可以运行在不同的 NUMA 节点上,并且它们的数据访问非常昂贵。每个 NUMA 节点
我有一个 控制台 .net 核心中的应用程序。 如何实现 Kubernetes 就绪/活跃度探测? 我的应用程序循环处理rabbitmq 消息,并且不监听任何http 端口。 最佳答案 对于这种情况,
在嵌入式系统上使用ALSA捕获时,我仍然遇到问题。 使用snddevices脚本后,我现在可以从库中打开设备。但是在每次调用大约10秒钟后,应用程序在Input/output error调用上返回错误
我想知道如何在 Facebook 应用程序的 FBJS 中使用 $(document).ready 或类似的东西。我尝试了 $(document).ready 但它不起作用。我也找不到任何相关文件..
我在 $('document').ready 中定义了一个函数。 $('document').ready(function() { function visit(url) { $.ajax
下面是一个简单的测试用例来演示我正在尝试做的事情: Test $(document).ready(function() { $(":target").css('color', 'r
使用 ember cli v0.1.4、ember 1.8.1 和 cordova 3.7,我正在使用初始化程序等待设备准备就绪; var CordovaInitializer = { name:
我正在研究 jQuery 最佳实践并找到了 this文章 by Greg Franko 通常,我会: $("document").ready(function() { // The DOM i
这个问题已经有答案了: What is the scope of variables in JavaScript? (27 个回答) 已关闭 5 年前。 我想在 $(document).ready(x
我成功地使用 gce ingress 使用 GKE 创建了一个集群。但是 Ingress 需要很长时间才能检测到服务是否就绪(我已经设置了 livenessProbe 和 readinessProbe
我不确定我在这里问的问题是否正确,但基本上我是用ajax请求插入html: // data-active_chart if ($("#charts").attr("data-active_chart"
我正在使用 Foundation CSS 框架,它在页脚中加载 jQuery。这不是非典型做法,也是许多人推荐的做法。但是,我需要在页面中编写脚本。使用 document ready 应该可以解决问题
我是一名优秀的程序员,十分优秀!