正在验证维度文本输入javascript

Validating Dimension text input javascript

本文关键字:文本 输入 javascript 验证      更新时间:2023-09-26

如何使用javascript验证asp文本框。我想验证用户的输入,比如4-1/2或80-1/2或6/8或5。有几种类型的模式,它们只被允许并且总是包含一个数字。我想在输入不匹配时显示警报
我是javascript的初学者。

我试过我的代码。

function valid_Dimentions(fieldObj) {
 // regular expression
 var rgexp = new RegExp(""/^[0-9/-]{1,4}$/"");
 var input = fieldObj.value;
     if (input.match(rgexp))
         alert("The width field format is incorrect!");                    
}

我用它来赚钱和工作,并用它来构建我的非工作代码。

function valid_number(fieldObj) {
 if (fieldObj.value != '' && isNaN(fieldObj.value)) {
    alert('You must enter a valid price like 0.00 and no $');
    fieldObj.select();
    fieldObj.focus();
    return false;
 }
 return true;
}

<asp:TextBox id="TWidth" type="text" runat="server" placeholder="4-1/2" onchange="valid_Dimentions_Width(this);"  list="PartType" runat="server" required="required" Width="210px" AutoCompleteType="Disabled" AutoPostBack="True"/>
  • 避免使用alert。相反,只需用错误消息填充一些元素
  • 避免只在客户端进行验证,也要在服务器端进行验证
  • 当匹配为true时,您的if将显示错误。它应该否定它
  • 您的正则表达式是错误的,它只是检查它是否是一个1到4位数的数字
  • 您可以通过在/

这是我附带的正则表达式:

^([0-9]+|[0-9]+-[0-9]+'/[0-9]+|[0-9]+'/[0-9]+)$

它会检查您的号码是否为以下号码之一:

  • 纯数字:[0-9]+
  • 编号后接-,后接编号/编号:[0-9]+-[0-9]+'/[0-9]+
  • 编号/编号:[0-9]+'/[0-9]+

请注意,我必须用'来处理/,这样regex定义就不会混乱。

这是最后的代码:

function valid_Dimensions_Width(fieldObj) {
    var error = ""
    var rgexp = /^([0-9]+|[0-9]+-[0-9]+'/[0-9]+|[0-9]+'/[0-9]+)$/;
    var input = fieldObj.value;
    if (!input.match(rgexp)) error = "The width field format is incorrect!";
    document.getElementById("TWidthError").innerHTML = error;
}

和工作小提琴:http://jsfiddle.net/w3f5skp8/

我用onKeyUp替换了onChange,所以它可以立即显示反馈。