Javascript表单验证-多个大于0的表单字段 函数negativeValues(){ var myTextField=document.getElementById('digit'); 如果(myTextField.value
上面是一段Javascript代码,每当字段id“digit”的值小于0时,submit或submit按钮中的onclick都会出现一个警报框 表单中大约有50个字段应被视为“数字”字段,其中不应小于0。我应该使用此Javascript更改什么以确保所有类似“数字”的字段都会弹出此警报框 我不能使用jquery/mootools进行验证——它必须是平面Javascript 谢谢。Javascript表单验证-多个大于0的表单字段 函数negativeValues(){ var myTextField=document.getElementById('digit'); 如果(myTextField.value,javascript,validation,Javascript,Validation,上面是一段Javascript代码,每当字段id“digit”的值小于0时,submit或submit按钮中的onclick都会出现一个警报框 表单中大约有50个字段应被视为“数字”字段,其中不应小于0。我应该使用此Javascript更改什么以确保所有类似“数字”的字段都会弹出此警报框 我不能使用jquery/mootools进行验证——它必须是平面Javascript 谢谢。var form=document.forms[0];//文件中的第一个表格 function negativeVal
var form=document.forms[0];//文件中的第一个表格
function negativeValues(){
var myTextField = document.getElementById('digit');
if(myTextField.value < 0)
{
alert("Unable to submit as one field has a negative value");
return false;
}
}
form.onsubmit=函数(){
对于(var i=0;i不提供ID=“digit”,ID需要是唯一的。而是提供一个类=“digit”或name=“digit[]”,在PHP中,它将在服务器上提供一个数组
下面是使用表单访问进行的典型验证
var form = document.forms[0]; // first form in the document
form.onsubmit = function () {
for (var i=0; i<this.elements.length; i++)
if (Number(this.elements[i].value) < 0) {
alert("Unable to submit as one field has a negative value"); // complain
return false; // and prevent submission
}
}
如果可以从其他地方操纵类名
您可以使用ID=“digit1”ID=“digit2”和
这是最好的选择。我遇到的一个问题是,这些表单中的一些表单已经激活了LiveValidation-因此有时代码会更改类,而脚本不起作用。我应该在这里做什么?它是替换类还是添加到类中?如果添加,请使用el[I].className.indexOf('digit')!=-1
。否则使用ID=“digit1”ID=“digit2”和代码:el[i].ID.indexOf('digit')==0
function validate(theForm) {
var el = theForm.elements;
for (var i=0,n=el.length;i<n;i++) {
if (el[i].className=="digit" && parseInt(el[i].value,10)<0) {
alert('This field must contain a value > 0');
el[i].focus();
return false;
}
}
return true; // allow submission
}
<form onsubmit="return validate(this)">
if (el[i].className.indexOf('digit')!=-1
if (el[i].id.indexOf('digit')==0