我是java-script的新手。
我使用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.仅对字母进行验证,并将文本框的颜色更改为红色。
4.Validate日期范围。例如,如果他/她输入无效日期,如05/05/2001,我需要当前日期。
5.将文本框突出显示为红色以显示所需的文本框。
答案 0 :(得分:0)
对于问题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";
}
}