如何在JS中验证我的表单?

时间:2018-04-16 11:10:42

标签: javascript regex validation

我正在尝试验证表单的全名部分,要求是:

  1. 只有字母,单词和“ - ”之间的空格才有效。
  2. 最少3个字符,最多35个。
  3. 我的HTML代码如下:

    import binascii
    code = '098 ... '
    decoded_text = binascii.unhexlify(code).decode('utf-16-be')
    
    function test(myForm) 
    {         
        var regex = /^[a-zA-Z]+$/;
        if(regex.test(myForm.full_name.value) == false) {
            alert("Name must be in alphabets only");
            myForm.full_name.focus();
            return false;
        }
    }

2 个答案:

答案 0 :(得分:2)

试试这个正则表达式,它在字符串的开头或结尾不允许使用空格或-字符:

var regex = /^[a-zA-Z][a-zA-Z- ]{1,33}[a-zA-Z]$/

答案 1 :(得分:1)

这个正则表达式应该为你工作/(^[a-zA-Z -]{3,35}$)/
说明:
      [a-zA-z -] - 任何字符空间或-
      {3,35} - 重复3到35次

示例:

    function test(name) {         
       var regex = /(^[a-zA-Z -]{3,35}$)/
       return regex.test(name)
    }

console.log(test('valid-name'))
console.log(test('valid Name'))
console.log(test('valid'))
console.log(test('in'))
console.log(test('invalid~name'))
console.log(test('invalidname invalidname invalidname invalidname'))