在堆栈溢出的帮助下,我得到了下面的文本框验证代码
它必须包含至少 3 个字符
它必须包含至少一个元音
它必须只包含字母
仅当满足以上 3 个条件时,才必须启用提交按钮
var $input = $('#myinput'); var $error = $('.error'); var $submit = $('#submit'); var Filters = { min: { re: /.{3,}/, error: 'Must be at least 3 characters.' }, char: { re: /[a-z]/i, error: 'Must be only letters.' }, vowel: { re: /[aeiou]/i, error: 'Must have at least one vowel.' } }; function test(value, filters) { var isValid = false; for (var i in filters) { isValid = filters[i].re.test(value); $error.hide(); $submit.show(); if (!isValid) { $error.show().text(filters[i].error); $submit.hide(); break; } } return isValid; } $input.on('keyup blur', function() { test(this.value, Filters); });
但是,它仍然接受数字.. 考虑输入是 aa99。它的启用按钮。