我是靠谱客的博主 冷静大船,最近开发中收集的这篇文章主要介绍ASP.NET中RequiredFieldValidator控件失效的解决办法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在将代码迁移后,发现RequiredFieldValida控件对textbox验证失效,从RequiredFieldValidator控件生成的js中(WebResource.axd)知道是在

        if (typeof(val.evaluationfunction) == "function") {
            val.isvalid = val.evaluationfunction(val);
            if (!val.isvalid && Page_InvalidControlToBeFocused == null &&
                typeof(val.focusOnError) == "string" && val.focusOnError == "t") {
                ValidatorSetFocus(val, event);
            }
        }

中 typeof(val.evaluationfunction)不是function而引起的,RequiredFieldValidator控件生成的html标签中evaluationfunction="RequiredFieldValidatorEvaluateIsValid",而在兼容性evaluationfunction="function RequiredFieldValidatorEvaluateIsValid(val) {
    return (ValidatorTrim(ValidatorGetValue(val.controltovalidate)) != ValidatorTrim(val.initialvalue))
}“

解决方法一:可以重写RequiredFieldValidator的evaluationfunction

var val = document.getElementById('<%= RequiredFieldValidatorId.ClientID %>');
function RequiredFieldNewFunction()
{
	return (ValidatorTrim(ValidatorGetValue(val.controltovalidate)) != ValidatorTrim(val.initialvalue));
}
val.evaluationfunction = RequiredFieldNewFunction();

解决方法二: 就是看web.config中是不是是设置了

<xhtmlConformance mode="Legacy"/>

将其注释掉或者改成transitional,而xhtmlConformance可以网上查资料

谷歌现在直接用ip访问好像挺不错 http://209.116.186.231/

最后

以上就是冷静大船为你收集整理的ASP.NET中RequiredFieldValidator控件失效的解决办法的全部内容,希望文章能够帮你解决ASP.NET中RequiredFieldValidator控件失效的解决办法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部