Javascript选中数字的多个文本框
我正在检查一个文本框的数值,如下所示:Javascript选中数字的多个文本框,javascript,validation,Javascript,Validation,我正在检查一个文本框的数值,如下所示: 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(validC
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;
}
函数validateEnumeric(){
var old=document.getElementById(“tbNum”).value;
var new=old_val.replace(/^\s+|\s+$/g,“”);
var validChars='0123456789';
对于(var i=0;i
我想使用相同的函数,并检查其他需要数值的文本框的数值。在提交表单之前,我如何传递tbID、tbDiscID以及以上的值并返回true。我不确定您所说的
tbID
和tbDiscID
是什么意思,但要在普通JavaScript中实现这一点,您可以通过遍历JavaScript的参数
对象来概括此解决方案,它允许您将任意数量的参数传递给函数。这将帮助您获取所需的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;
}
}
其中
myTextBox1
myTextBoxN
是文本框的ID。为函数使用参数,以便在不同元素上使用它
validateNumeric(value) {
使用表单标记上的onsubmit参数调用验证
<form name="myForm" action="dosomething.php" onsubmit="return validateForm()"
这是一种方式
编辑忘记了validateForm方法中的检查我建议将jQuery与[enter link description here][1][1]上发布的内容一起使用:一种更简单、可能更快的检查值是否为数字的方法:
val.match(/^\d+$/)
(其中val是要检查的变量)
<form name="myForm" action="dosomething.php" onsubmit="return validateForm()"
function validateForm() {
if (!validateNumeric(document.getElementById("tbNum"))) {
return false;
}
...
return true;