[英]ASP.NET MVC 3 validation on blur
当文本框失去焦点时,如何调用验证? 例如。
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<div class="editor-label">
@Html.LabelFor(model => model.Name)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Name)
@Html.ValidationMessageFor(model => model.Name)
</div>
}
public class RegisterViewModel
{
[Required]
[StringLength(5)]
public string Name { get; set; }
}
另外,如何通过调用操作来检查名称是否已存在?
您可以通过使用setDefaults()
来覆盖onfocusout
属性,并使用一个始终通过调用valid()
方法来计算模糊元素的函数来启用热切评估。
// enable eager evaluation
$.validator.setDefaults({
onfocusout: function (element) {
$(element).valid();
}
})
热切评估的演示 :
(标签出后需要显示)
// enable eager evaluation $.validator.setDefaults({ onfocusout: function (element) { $(element).valid(); } }); $("form").validate();
input.error { border-color: red }
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.13.1/jquery.validate.js"></script> <form > <input type="text" name="Name" required /><br/> <input type="text" name="Email" required /><br/> <input type="submit" value="Submit"/> </form>
正常演示
(提交前不会显示)
$("form").validate();
input.error { border-color: red }
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.13.1/jquery.validate.js"></script> <form > <input type="text" name="Name" required /><br/> <input type="text" name="Email" required /><br/> <input type="submit" value="Submit"/> </form>
这种行为有一种解决方法: Jquery Validation Plugin - 你能从选项启用“eager”验证吗?
远程验证是MVC 3的一个新功能: http : //msdn.microsoft.com/en-us/library/gg508808 (v = vs.98).aspx
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.