如何在Validator激活时更改背景颜色

时间:2018-04-18 11:04:47

标签: asp.net

验证器处于活动状态时,如何更改背景颜色 在Asp.net中,我想在验证器处于活动状态时将背景颜色更改为红色,以便在页面验证上进行回发

3 个答案:

答案 0 :(得分:3)

function fnOnUpdateValidators()
        {
            if (typeof Page_Validators != 'undefined') {
                for (var i = 0; i < Page_Validators.length; i++)
                {
                    var val = Page_Validators[i];
                    var ctrl = document.getElementById(val.controltovalidate);
                    if (ctrl != null && ctrl.style != null)
                    {
                        if (!val.isvalid)
                            ctrl.style.background = '#FFAAAA';
                        else
                            ctrl.style.backgroundColor = '';
                    }
                }
            }
        }

并以表格加载

 Page.ClientScript.RegisterOnSubmitStatement(this.GetType(), "val", "fnOnUpdateValidators();"); 

答案 1 :(得分:1)

很简单。

使用If Condition。

var val = Page_Validators;
                    var ctrl = document.getElementById(val.controltovalidate);
                    if (ctrl != null && ctrl.style != null)
                    {
                        if (!val.isvalid)
                            ctrl.style.backgroundcolor = '#dddddd';
                        else
                            ctrl.style.backgroundColor = '';
                    }

答案 2 :(得分:1)

我宁愿在验证器中添加/删除类名,而不是直接设置颜色。

$(document).ready(function () {
    ValidatorUpdateIsValid = function () {
        Page_IsValid = AllValidatorsValid(Page_Validators);
        setValidatorStyles();
    }
});

function setValidatorStyles() {
    for (i = 0; i < Page_Validators.length; i++) {
        var inputControl = document.getElementById(Page_Validators[i].controltovalidate);
        if (null !== inputControl && !Page_Validators[i].isvalid) {
            WebForm_AppendToClassName(inputControl, "invalidElement");
        } else if (null !== inputControl) {
            WebForm_RemoveClassName(inputControl, "invalidElement");
        }
    }
}