我已阅读here任何ASP.NET验证器都有一个名为“isvalid”的属性。这个属性可以在客户端用来检查验证器是否成功通过了验证。访问Javascript中的ASP.NET验证器的属性无效
我试图访问该属性为以下但由于某些原因的代码失败:
警报(的document.getElementById(“validator_clientID”)的isValid);
你知道为什么这样不起作用吗?
我已阅读here任何ASP.NET验证器都有一个名为“isvalid”的属性。这个属性可以在客户端用来检查验证器是否成功通过了验证。访问Javascript中的ASP.NET验证器的属性无效
我试图访问该属性为以下但由于某些原因的代码失败:
警报(的document.getElementById(“validator_clientID”)的isValid);
你知道为什么这样不起作用吗?
我发现了一样!
试试这个document.getElementById('XXX').Validators[0].isvalid
它的工作对我来说
我不认为isvalid在验证器控件上直接工作,因为这是一个服务器端验证功能。您可以使用客户端JavaScript函数Page_ClientValidate
为当前页面或验证组发出验证器检查。您可以选择指定一个验证组名称作为参数。如果所有的验证通过,这将返回true。
您还可以查看更多可用的客户端功能,以及它们如何映射到MSDN上的服务器端功能在:
记得拨打
IsValid
代替
isvalid
(可能会发生变化)
在客户端的JavaScript:
var controlIsValid = this.document.getElementById(“validatorID”)。attributes.isvalid.value;
请发布验证声明以及完整的JavaScript。此外,澄清你的意思是“没有运气”。你收到什么错误?使用您提供的方法为我工作,显示isvalid属性的当前状态。我怀疑你使用的id(validator_clientID)是不正确的。 – Phaedrus 2009-09-26 14:36:46
我试过像这样访问它,它的工作原理: bool flag = validatorname.isvalid; 由于某些原因,通过可直接访问的对象访问有效。但我不知道为什么使用getElementById获取元素没有检索到对象。我使用验证器ID尝试了它的事件 - 而不是ClientID - 并且它仍然无法访问。我有未定义的价值。 – mohammedn 2009-10-06 00:09:26