- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想使用 MVC FoolProof Validation 在我的 MVC 3 应用程序中。
我需要数字验证并且还接受 N/A 或 n/a。所以我决定创建自己的自定义验证属性,如 NumericAllowNAAttribute 并添加一个 jQuery 验证自定义采用方法。
我重新访问了 MVC Foolproof 并决定使用它,因为它已经构建了其他有用的方法。我也想要那些。现在我如何使用 jQuery 验证和服务器端编写在客户端工作的 CustomValidationAttribute?
在谷歌上搜索了关于扩展 MVC Foolproof 的内容,但我没有得到任何结果。
Is any one came across extending or implementing this kind of validation works in server and client with jQuery validation plugin?
最佳答案
您可以通过定义一个继承 ContingentValidationAttribute 的新属性来扩展万无一失的 MVC(或万无一失中的其他属性之一,但大陆非常接近准系统)。
您将需要定义以下方法覆盖。
public override bool IsValid(object value, object dependentValue, object container)
protected override IEnumerable<KeyValuePair<string, object>> GetClientValidationParameters()
public override string ClientTypeName
ClientTypeName 字符串值由 jquery 非侵入式验证使用。
此外,请务必使用 DataAnnotationsModelValidatorProvider 注册您的适配器(万无一失在其类的构造函数中进行)。
DataAnnotationsModelValidatorProvider.RegisterAdapter(typeof(MyCustomValidationAttribute), typeof(FoolproofValidator));
定义服务器端验证逻辑后,您需要在客户端注册 jquery 非侵入式验证:
jQuery.validator.addMethod("clienttypenameyouemitontheserver", function(value, element, params) {
// perform your checks here and return true or false
return true;
});
var $Unob = $.validator.unobtrusive;
$Unob.adapters.add("clienttypenameyouemitontheserver", ["param1", "param2", "paramZ"], function (options) {
var value = {
param1: options.params.param1,
param2: options.params.param2,
paramZ: options.params.paramZ
};
setValidationValues(options, "clienttypenameyouemitontheserver", value);
});
关于regex - 扩展 MVC FoolProof 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14243754/
我想使用 MVC FoolProof Validation 在我的 MVC 3 应用程序中。 我需要数字验证并且还接受 N/A 或 n/a。所以我决定创建自己的自定义验证属性,如 NumericAll
我正在尝试使用 MVC 万无一失的验证框架 ( http://foolproof.codeplex.com/ ),但我在使用 ModelAwareValidationAttribute 类时遇到了问题
也许我在这里做错了什么。我正在使用 treeview control ,我用数据填充它。为此,数据(主要是整数)被转换为 CString。当用户单击某个项目时,我可以读取 CString,但必须解析它
例如我有以下模型: public class MyModel { public Line[] Lines{get;set;} } public class Line { public int Quan
我是一名优秀的程序员,十分优秀!