我有一个要求各种数字的表格
然后输入苹果的苹果数量。身份证是苹果。我尝试过onclick和onfocus,但效果不佳。我只是想在他们进入下一个框之后检查以确保它是有效数字或提出警报并重点关注。以下是我对该方法的看法。
function validate (apple) {
var textInput = document.getElementById(apple);
var value = parseInt(textInput.value, 10);
return ( value >= 0 && value <= 99);
alert("number wrong")
}
这是代码
<td><input type = "text" id = "apple" size="1" onkeypress="validate();"/></td></tr>
答案 0 :(得分:2)
在显示警报之前,您将在所有情况下从该功能返回。尝试:
function validate (apple) {
var textInput = document.getElementById(apple);
var value = parseInt(textInput.value, 10);
// Store the comparison's return value
var ret = ( value >= 0 && value <= 99);
// Then show the alert if necessary
if (!ret) {
alert("number wrong");
}
// Finally, return the comparison's result
return ret;
}
答案 1 :(得分:2)
你应该使用onblur
,这是元素失去焦点时的事件。
您在return
之前alert
,alert
将无法执行。
答案 2 :(得分:0)
function sales_tax_validate (id) {
var textInput = $("#sales_tax_"+id).val();
var value = parseInt(textInput);
var ret = ( value >= 0 && value <= 99);
// Then show the alert if necessary
if (!ret) {
alert("Please enter number between 0 to 99.");
$("#sales_tax_"+id).val("");
$("#sales_tax_"+id).focus();
}
// Finally, return the comparison's result
return ret;
}
<input type="text" required name="sales_tax_<?php echo $rows['id'];?>" id="sales_tax_<?php echo $rows['id'];?>" value="<?php echo $sales_tax;?>" onblur="sales_tax_validate(<?php echo $rows['id'];?>);">