Javascript 检查提交表单时是否跳过了文本输入字段?
我有一个带有文本输入的表单,我正在检查表单提交时是否有跳过的文本输入,并且有一个警告,提示行被跳过,他们需要在提交表单之前填写这些行 这是我正在使用的代码,如果最后一行为空,我会得到一个错误,即未定义NextEntyline 我得到的lin是该文本输入的行数Javascript 检查提交表单时是否跳过了文本输入字段?,javascript,text,input,Javascript,Text,Input,我有一个带有文本输入的表单,我正在检查表单提交时是否有跳过的文本输入,并且有一个警告,提示行被跳过,他们需要在提交表单之前填写这些行 这是我正在使用的代码,如果最后一行为空,我会得到一个错误,即未定义NextEntyline 我得到的lin是该文本输入的行数 var emptyLine = eval('document.forms.mainForm.itemLine_1_' + lin).value; var nextEmptyLine = eval('document.forms.mainFo
var emptyLine = eval('document.forms.mainForm.itemLine_1_' + lin).value;
var nextEmptyLine = eval('document.forms.mainForm.itemLine_1_' + [lin+1]).value;
if((emptyLine == "") && (nextEmptyLine != ""){
alert("You seem to have skipped a line. Please go back and close up the lines. We do not allow for skipped lines." );
submitOnce=false;
return false;
}
哇,真正的黑暗时代密码,你从哪里找到的?对eval的合理使用很少。一般来说,永远不要使用它
要检查每个textarea元素是否都有空字符串或所有空白以外的值,请在表单上使用submit侦听器:
<form onsubmit="return checkTextareas(this);" ...>
...
</form>
...
那么功能是:
function checkTextareas(form) {
var tas = form.getElementsByTagName('textarea');
var re = /^\s*$/;
for (var i=0, iLen=tas.length; i<iLen; i++) {
if (re.test(tas[i].value)) {
// textarea has only whitespace or nothing in its value
// Tell the user why submit failed
alert('Ooops! You missed a line');
return false;
}
}
}
函数检查文本区域(表单){
var tas=form.getElementsByTagName('textarea');
var re=/^\s*$/;
对于(var i=0,iLen=tas.length;iIf)您可以使用我建议使用jQuery和jQuery验证插件的框架。然后您将免费获得此功能。哇,加载100KB、4000行脚本加插件,并编写验证代码以替换10行函数。
function checkTextareas(form) {
var tas = form.getElementsByTagName('textarea');
var re = /^\s*$/;
for (var i=0, iLen=tas.length; i<iLen; i++) {
if (re.test(tas[i].value)) {
// textarea has only whitespace or nothing in its value
// Tell the user why submit failed
alert('Ooops! You missed a line');
return false;
}
}
}