首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.net c#验证

.net c#验证
EN

Stack Overflow用户
提问于 2012-09-12 02:46:18
回答 2查看 646关注 0票数 0

下午好,

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

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

提前感谢!

抢夺

Javascript:

代码语言: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";
}
EN

回答 2

Stack Overflow用户

发布于 2012-09-12 02:52:13

您可以尝试使用基于RegisterStartupScript的代码

代码语言:javascript
复制
 var javaScript = 
  "<script language=JavaScript>
   ValidatorUpdateDisplay(); 
   </script>";

 RegisterStartupScript("Key_ClickScript", javaScript); 
票数 0
EN

Stack Overflow用户

发布于 2019-11-04 00:47:57

代码语言:javascript
复制
//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");
            }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12376023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档