Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net c#验证_C#_Asp.net_Validation - Fatal编程技术网

.net c#验证

.net c#验证,c#,asp.net,validation,C#,Asp.net,Validation,下午好 我有一个使用C#服务器端验证的简单表单。当将单选按钮或下拉列表与AutoPostBack一起使用时,我必须在代码隐藏方法中调用Page.Validate()。当我这样做时,它不会在覆盖C#validation的默认函数的页面上运行Javascript 在autopostback方法中调用Page.Validate()调用时,如何让javascript-ValidatorUpdateDisplay函数运行 提前谢谢 抢劫 Javascript: // Form Validation: Ch

下午好

我有一个使用C#服务器端验证的简单表单。当将单选按钮或下拉列表与
AutoPostBack
一起使用时,我必须在代码隐藏方法中调用
Page.Validate()
。当我这样做时,它不会在覆盖C#validation的默认函数的页面上运行Javascript

在autopostback方法中调用
Page.Validate()
调用时,如何让javascript-
ValidatorUpdateDisplay
函数运行

提前谢谢

抢劫

Javascript:

// Form Validation: Change TextBox CSS for outline color
ValidatorUpdateDisplay = function (val) {

    var ctl = $('#' + val.controltovalidate);
    var eCount = 0;

    for (var i = 0; i < Page_Validators.length; i++) {        
        var v = Page_Validators[i];

        if (v.controltovalidate == val.controltovalidate) {                      
            if (!v.isvalid) {
                eCount++;
                ctl.addClass('validationError');
                $('td.question:eq(' + i + ')').addClass('someClass');                           
            }        
        }
    }

    if (eCount > 0) {
        ctl.addClass('validationError');
    } 
    else {
        ctl.removeClass('validationError');
        // $('td.question:eq(' + i + ')').removeClass('someClass');
    }

    if (typeof (val.display) == "string") {
        if (val.display == "None") {
            return;
        }
        else if (val.display == "Dynamic") {
            val.style.display = val.isvalid ? "none" : "inline";
            return;
        }
    }

    if (navigator.userAgent.indexOf("Mac") > -1 &&
        navigator.userAgent.indexOf("MSIE") > -1) {
        val.style.display = "inline";
    }

    val.style.visibility = val.isvalid ? "hidden" : "visible";
}
//表单验证:更改文本框CSS的轮廓颜色
ValidatorUpdateDisplay=函数(val){
var ctl=$(“#”+val.controltovalidate);
var-ecoount=0;
对于(var i=0;i0){
ctl.addClass('validationError');
} 
否则{
ctl.removeClass('validationError');
//$('td.question:eq('+i+')).removeClass('someClass');
}
if(typeof(val.display)=“字符串”){
如果(val.display==“无”){
返回;
}
else if(val.display==“动态”){
val.style.display=val.isvalid?“无”:“内联”;
返回;
}
}
if(navigator.userAgent.indexOf(“Mac”)>-1&&
navigator.userAgent.indexOf(“MSIE”)>-1){
val.style.display=“内联”;
}
val.style.visibility=val.isvalid?“隐藏”:“可见”;
}

您可以基于RegisterStartupScript

 var javaScript = 
  "<script language=JavaScript>
   ValidatorUpdateDisplay(); 
   </script>";

 RegisterStartupScript("Key_ClickScript", javaScript); 
var javaScript=
"
ValidatorUpdateDisplay();
";
RegisterStartupScript(“按键点击脚本”,javaScript);
/C#仅对数字进行验证-

如果(!(e.KeyChar>='0'&&e.KeyChar,我不确定具体的问题,但这里有一个链接,它可能对如何覆盖ValidatorUpdateDisplay函数有一些见解:我认为这不适用于asp.net
//C# validation for number only- 

if (!(e.KeyChar >= '0' && e.KeyChar <= '9' || e.KeyChar == 8))
            {
                e.Handled = true;
                MessageBox.Show("This textbox accepts only Numbers");
            }  

//C# validation for characters only-

if (!char.IsLetter(e.KeyChar) && !(e.KeyChar == 8) && !(e.KeyChar == 32))
            {
                e.Handled = true;
                MessageBox.Show("This textbox accepts only alphabetical characters");
            }