我有一个必需的html输入,并且正在使用jQuery动态设置输入模式,如下所示:
let theString = 'test'
$('input[name="string"]').attr("pattern", theString)
这很好,输入仅在其值完全等于test
我该如何做相反的事情?我希望它仅在值不是test
答案 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>