我希望能够根据从哪个控制器调用视图来启动一些验证函数...我将在 ViewState 或其他内容中设置一个变量,这将帮助我知道从哪个控制器调用该视图。
换句话说,如果设置了某个变量,我希望需要验证...这是当我将 Jquery 放入代码中时我在 MVC2 中执行的操作...
HospitalFinNumber: {
required: function (element) {
debugger;
return '@isFlagSet' != 'True';
},
minlength: 6,
remote: function () {
//debugger;
return {
url: '@Url.Action("ValidateHosFin", "EditEncounter")',
data: { hospitalFin: $('#HospitalFinNumber').val(), encflag: '@encflag' }
};
}
}
你知道我在那里做什么。仅当设置了某个变量时才需要进行此验证...在本例中,变量 isFlagSet...然后我将设置最小长度并调用远程函数以确保该值是唯一的。
我不想在所有情况下都这样做。
从我到目前为止所读到的所有内容来看,没有明确的方法可以使用不显眼的ajax来完成此任务?我错了吗,有什么办法可以做到这一点吗?如果没有,我怎样才能将常规的旧 jquery 验证放入我的代码中?
ASP.NET MVC 3 使用 jquery 非侵入式验证来执行客户端验证。所以你可以写一个custom RequiredIf https://stackoverflow.com/q/6495510/29407验证属性或使用中提供的一个Mvc 万无一失的验证 http://foolproof.codeplex.com/进而:
public class MyViewModel
{
[RequiredIf("IsFlagSet", true)]
[Remote("ValidateHosFin", "EditEncounter")]
[MinLength(6)]
public string HospitalFinNumber { get; set; }
public bool IsFlagSet { get; set; }
public string EncFlag { get; set; }
}
然后剩下的就是包括jquery.validate.js
and jquery.validate.unobtrusive.js
脚本或使用 ASP.NET MVC 4 中包含它们的相应包。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)