如果填写了文本框a,请确保在执行提交时填写文本框b,反之亦然,如果填写了框b,请确保其中也包含数据。这可以循环检查许多文本框,如果文本框的行a有数据检查第二行文本框也有行a的数据。第a行中的所有文本框都不需要填写。谢谢。
答案 0 :(得分:2)
你的问题有点难以理解;如果你能更好地解释你真正想要的东西,那会很有帮助。你不需要任何条件;只需执行以下操作:
<script>
function checkForm() {
if (!isEmpty(document.myForm.checkA.value)
&& !isEmpty(document.myForm.checkB.value))
return true;
else
return false;
}
function isEmpty(text) {
return text.length == 0 || !text.match(/[^\s]/))
}
</script>
<form name="myForm" onSubmit="return checkForm();">
<input name="textA" type="text" />
<input name="textB" type="text" />
<input type="submit" value="Submit!" />
</form>
答案 1 :(得分:1)
如果使用数组来保存对文本框的引用,这应该很简单。例如(在我的头顶,所以这不是100%正确),让我们说你有5对3和3:
var col = new Array(5);
var row = new Array(3);
col[0] = document.myForm.checkA1;
col[1] = document.myForm.checkB1;
// etc
row[0] = col;
col = new Array(5);
col[0] = document.myForm.checkA2;
col[1] = document.myForm.checkB2;
// etc
row[1] = col;
col = new Array(5);
col[0] = document.myForm.checkA3;
col[1] = document.myForm.checkB3;
// etc
row[2] = col;
您现在可以在row[0]
中循环播放数组,如果您发现row[0][2]
有文字,则只需要验证row[1][2]
是否还有文字。