【问题标题】:Textbox validations and color change文本框验证和颜色更改
【发布时间】:2013-10-07 07:48:07
【问题描述】:

我是 java 脚本的新手。

我使用 C# 开发了一个使用 VS ASP.Net 4.0 的系统,我有超过 45 个 Web 表单,我想使用 Java 脚本添加验证。我有以下用于字母和数字验证的代码。请参阅下面的代码。但这段代码不能按我想要的方式工作,因为它可以在你按下空格键时验证。

function numeralsOnly(evt) {
    evt = (evt) ? evt : event;
    var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0));
    if (charCode > 31 && (charCode < 48 || charCode > 57)) {
        alert("Enter numbers only in this field.");
        return false;
    }
    return true;
}

function lettersOnly(evt) {
    evt = (evt) ? evt : event;
    var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0));
    if (charCode > 31 && (charCode < 65 || charCode > 90) && (charCode < 97 || charCode > 122)) {
        alert("Enter letters only.");
        return false;
    }
    return true;
}

您能帮我解决以下问题吗?

1.仅验证数字并将文本框的颜色更改为红色。

2.仅验证字母并将文本框的颜色更改为红色。

  1. 验证无效的电子邮件地址并将文本框的颜色更改为红色。

4.验证日期范围。例如,如果他/她输入无效日期,例如 05/05/2001,我需要当前日期。

5.将文本框高亮显示为红色以表示所需的文本框。

【问题讨论】:

  • 上面提到的代码在哪里?
  • 函数 numbersOnly(evt) { evt = (evt) ? evt:事件; var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0)); if (charCode > 31 && (charCode 57)) { alert("仅在此字段中输入数字。");返回假; } 返回真; }
  • 函数 lettersOnly(evt) { evt = (evt) ? evt:事件; var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0)); if (charCode > 31 && (charCode 90) && (charCode 122)) { alert("只输入字母。");返回假; } 返回真; }
  • 下次请把你的代码放在问题正文中,谢谢!
  • 好的,我会这样做的......

标签: javascript asp.net


【解决方案1】:

对于问题 5:调用 onchange 或 onblur 方法中的方法。它会在您离开该字段时进行验证。如果您想在单击任何键时进行验证,请调用 onkeyup,onkeydown。

   function Validations() {
  var textbox = document.getElementById("TextBox1");
  if (textbox.value == "") {
   textbox.style.borderColor = "Red";
   }
}

对于问题 1:

function namevalidation(){
var nametb = document.getElementsByName("TB1");
var NameRegEx = new RegExp("^[a-zA-Z]+$");

var NameValue = nametb.value.trim();

if ((!NameRegEx.test(NameValue))) {
    nametb.style.border = '1px solid red';
}
else {
    nametb.style.border = "none";
}

}

【讨论】:

    猜你喜欢
    • 2012-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    相关资源
    最近更新 更多