【问题标题】:Validation for erroneous/boundry data验证错误/边界数据
【发布时间】:2013-04-22 14:32:25
【问题描述】:

我正在使用它来检查提交时是否已将数据输入到表单中:

else if(document.getElementById('fname').value.replace(/^\s+|\s+$/g, '').length == 0) {
    alert('Please Insert your first name.');
    return false;
} else if(document.getElementById('lname').value.replace(/^\s+|\s+$/g, '').length == 0) {
     alert('Please Insert your last name.');
     return false;  
}

我希望它检查是否没有输入任何数字,并且它不超过 10 个字符。我该怎么做呢?

【问题讨论】:

    标签: php javascript forms validation


    【解决方案1】:

    检查文本中的数字

    // Check given string contain number or not
    // Return true is string contain number otherwise false
    function containNumbers(text) {
        return /\d/.test(text);
    }
    
    if(containNumbers(document.getElementById("fname").value)) { 
          alert('Text contain number'); 
    }
    


    长度限制

    // Check text length
    if (document.getElementById("fname").value.length >10 ) {
    
          // Validation code
    }
    


    非数字和长度均适用

    var first_name = document.getElementById("fname").value;
       if (first_name.length >10 || containNumbers(first_name)) {
    
                 // Validation code
       }
    

    【讨论】:

    • 这对数字有用,谢谢!有没有办法也可以最大化字符输入?
    【解决方案2】:

    要检查输入的数字是否为数字,请执行以下操作:

    // first, normalize your parameters (trimming in this case):
    var lname = document.getElementById('lname').value.replace(/^\s+|\s+$/g, '');
    
    if ( typeof lname == "number" ) {
        // its a number... float or int
    }
    if ( lname.length < 10 ) {
        // its too short...
    }
    if ( lname.length > 100 ) {
        // its too long...
    }
    // etc
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-07-11
      • 1970-01-01
      • 2011-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-10
      相关资源
      最近更新 更多