html5验证-当值不等于某个字符串时有效

时间:2018-08-24 13:39:52

标签: jquery regex html5 validation

我有一个必需的html输入,并且正在使用jQuery动态设置输入模式,如下所示:

let theString = 'test'

$('input[name="string"]').attr("pattern", theString)

这很好,输入仅在其值完全等于test

时有效

我该如何做相反的事情?我希望它仅在值不是test

时才有效。

1 个答案:

答案 0 :(得分:1)

我们可以使用negative lookahead来反转此正则表达式。请记住,仍然有很简单的方法可以解决此问题,并且在提交表单时,您应该依靠后端验证而不是前端验证。

<form>
    <input type="text" name="string" required/>
    <button type="submit">Submit</button>
</form>

<script>
    $(function() {
        let theString = '^(?!test$).*';

        $('input[name="string"]').attr("pattern", theString);
    });
</script>