我是 javascript 的新手。我需要使用 javascript 进行表单验证的认真帮助。这是我需要脚本执行的内容。
当用户填写表格并输入除 20 的倍数以外的数字(如 40、60、80、100)时,他应该收到警报。
示例:如果我在输入字段中输入 45,我会收到类似“您输入的金额无效”的错误。
{别的}
邮寄表格。
我是 javascript 的新手。我需要使用 javascript 进行表单验证的认真帮助。这是我需要脚本执行的内容。
当用户填写表格并输入除 20 的倍数以外的数字(如 40、60、80、100)时,他应该收到警报。
示例:如果我在输入字段中输入 45,我会收到类似“您输入的金额无效”的错误。
{别的}
邮寄表格。
尝试使用%
(模数)运算符
if ((+([value of inputfield])||1)%20 === 0) { /* is multiple of 20 */ }
// ^convert to Number ^
// ^if conversion fails, use 1 for value
// (so %-operation will not fail)
有关简单示例,请参见此 jsfiddle
在 jQuery 中
if($('#input_id').val() % 20 != 0)
{
$('#input_id').val('');
alert('You have entered an invalid amount.');
}
else
{
//success
}
@Kooilnc 是正确的,但这里有一个更完整的解决方案:http: //jsfiddle.net/nottrobin/vN3xK/
<form name="numberForm">
<input type="number" name="number" />
<button type="submit">submit</button>
</form>
<script>
// NB: jQuery is required
jQuery('[name="numberForm"]').bind(
'submit',
function(evt) {
if(jQuery('[name="number"]').val() % 20 != 0) {
alert('Your number is wrong');
evt.preventDefault();
}
}
);
</script>
我可以建议你使用%
而不是正则表达式吗,因为它更整洁。