【发布时间】:2009-10-07 18:55:22
【问题描述】:
在开发周期的早期阶段,如果我们只想快速从一个表单移动到另一个表单,让所有验证控件强制执行它们的规则有点烦人。
禁用页面上所有验证器控件的最简单方法是什么?
【问题讨论】:
标签: asp.net validation
在开发周期的早期阶段,如果我们只想快速从一个表单移动到另一个表单,让所有验证控件强制执行它们的规则有点烦人。
禁用页面上所有验证器控件的最简单方法是什么?
【问题讨论】:
标签: asp.net validation
设置一个javascript来获取页面中的所有验证器控件,并在for循环中将它们的值设置为false,这样就可以了
function DisablePageValidators()
{
if ((typeof(Page_Validators) != "undefined") && (Page_Validators != null))
{
var i;
for (i = 0; i < Page_Validators.length; i++) {
ValidatorEnable(Page_Validators[i], false);
}
}
}
【讨论】:
试试这个:
Page_ValidationActive = false;
【讨论】:
最好的办法是在页面上recursively loop through all controls,查找从BaseValidator class 继承的所有控件,然后将它们的Enabled 属性设置为False。你可以把它写成一个简单的库方法。
【讨论】:
如果允许您输入垃圾数据,是否可以更轻松地进行快速破解,让您直接跳到您想要进入的页面,而不是摆弄验证?
【讨论】:
从页面中删除它们。
【讨论】:
这个解决方案对我来说很好。
foreach (BaseValidator vValidator in Page.Validators)
{
vValidator.EnableClientScript = false;
vValidator.Enabled = false;
}
【讨论】: