我正在检查一个文本框的数值,如下所示:
function validateNumeric() {
var old = document.getElementById("tbNum").value;
var new = old_val.replace(/^\s+|\s+$/g,"");
var validChars = '0123456789';
for(var i = 0; i < new.length; i++){
if(validChars.indexOf(new.charAt(i)) == -1){
alert('Please enter valid number');
return false;
}
}
document.getElementById("tbNum").value = new;
return true;
}
我想使用相同的函数并检查需要数值的其他文本框的数值。如何传递tbID,tbDiscID以及上面的值,并在提交表单之前返回true。
答案 0 :(得分:0)
我不确定tbId
和tbDiscID
的含义,但是要在纯JavaScript中执行此操作,您可以通过遍历JavaScript的arguments
对象来概括此解决方案,该对象可让您通过在函数的任何可变数量的参数中。这有助于您获取所需的ID。您的新解决方案如下所示:
function validateNumeric() {
for (var arg in arguments) {
var id = arguments[arg];
var old = document.getElementById(id).value;
var new = old_val.replace(/^\s+|\s+$/g,"");
var validChars = '0123456789';
for(var i = 0; i < new.length; i++){
if(validChars.indexOf(new.charAt(i)) == -1){
alert('Please enter valid number');
return false;
}
}
document.getElementById(id).value = new;
return true;
}
}
然后调用它:
validateNumeric("myTextbox1", "myTextbox2", ..., "myTextboxN");
myTextBox1
... myTextBoxN
是您文本框的ID。
答案 1 :(得分:0)
使用函数参数,在不同元素上使用
validateNumeric(value) {
使用表单标记上的onsubmit参数来调用验证
<form name="myForm" action="dosomething.php" onsubmit="return validateForm()"
使用所有元素的调用编写验证函数
function validateForm() {
if (!validateNumeric(document.getElementById("tbNum"))) {
return false;
}
...
return true;
将是一种方式..
修改强>
忘记了validateForm方法中的检查