我想获得具有动态值且具有相同名称的输入值
<form name="myForm" onsubmit="return validQuantite()" method="post">
<td align="center"><FONT ><b><input type="text" name="qt[]" value="" </b></font></td>
<td align="center"><FONT ><b><input type="text" name="qt[]" value="" </b></font></td>
<td align="center"><FONT ><b><input type="hidden" name="originqt[]" value="2" </b></font></td>
<td align="center"><FONT ><b><input type="hidden" name="originqt[]" value="3" </b></font></td>
<center><input type="Submit" style="WIDTH: 120px; HEIGHT: 25px" name="Confirm" value="Confirm">
</form>
javascript
function validQuantite() {
var x = document.forms["myForm"]["qt[]"].values;
var originqt = document.forms["myForm"]["originqt[]"].values;
for(var i=0;i<x.length;i++){
if (x[i] == null || x[i] == "" || x[i] == 0 || x[i] > originqt) {
alert("error Quantite");
return false;
}
}
}
答案 0 :(得分:-1)
首先检查一下html
我没有找到输入的结束<
标记。
<form name="myForm" method="post" onsubmit="return validateForm()">
<td align="center"><FONT ><b><input type="text" name="qt[]" value=""></b></font></td>
<td align="center"><FONT ><b><input type="text" name="qt[]" value=""></b></font></td>
<td align="center"><FONT ><b><input type="hidden" name="originqt[]" value="2"></b></font></td>
<td align="center"><FONT ><b><input type="hidden" name="originqt[]" value="3"></b></font></td>
<center><input type="Submit" style="WIDTH: 120px; HEIGHT: 25px" name="Confirm" value="Confirm" >
</form>
你的javascript应该是这样的:
<script type="text/javascript">
function validateForm() {
var x = document.forms["myForm"].elements.namedItem("qt[]");
var originqt = document.forms["myForm"].elements.namedItem("originqt[]");
for(var i=0;i<x.length;i++){
if (x[i].value == null || x[i].value == "" || x[i].value == 0 || x[i].value > originqt[i].value) {
alert("error Quantite");
return false;
}
}
}
</script>
您必须将value
与x[i]
一起使用。