有没有办法在jQuery中验证空白区域,我有一个字段,我不想要任何空格我正在使用这个正则表达式
$('#contact_email').on('input', function() {
var input=$(this);
var re = /^[a-zA-Z0-9()._-]/;
var is_email=re.test(input.val());
if(is_email){input.removeClass("invalid").addClass("valid");}
else{input.removeClass("valid").addClass("invalid");}
});
请告诉我我错过了什么尝试了这里列出的每一个表达,当我按空格时,无论它有多少绿色有效,当我完成名称并按空格时,它让我写出尽可能多的空格?有没有办法不允许空白区域?
答案 0 :(得分:0)
答案 1 :(得分:0)
我建议:
if ((/\s+/).test(this.value)) {
$(this).removeClass('valid').addClass('invalid');
}
else {
$(this).removeClass('invalid').addClass('valid');
}
$('#demo').on('input', function() {
if ((/\s+/).test(this.value)) {
$(this).removeClass('valid').addClass('invalid');
} else {
$(this).removeClass('invalid').addClass('valid');
}
});
.valid {
border: 2px solid #0f0;
}
.invalid {
border: 2px solid #f00;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="demo" />
参考文献:
on()
。答案 2 :(得分:0)
将你的正则表达式改为:
var re = /^[a-zA-Z0-9()._-]+$/;
OR
var re = /^[\w().-]+$/;
您缺少量词并锚定$
以禁止不需要的字符。