获取具有相同名称

时间:2016-08-24 15:18:49

标签: javascript html

我想获得具有动态值且具有相同名称的输入值

<form name="myForm"  onsubmit="return validQuantite()" method="post">
<td align="center"><FONT ><b><input type="text" name="qt[]" value=""&nbsp;</b></font></td>
<td align="center"><FONT ><b><input type="text" name="qt[]" value=""&nbsp;</b></font></td>
<td align="center"><FONT ><b><input type="hidden" name="originqt[]" value="2"&nbsp;</b></font></td>
<td align="center"><FONT ><b><input type="hidden" name="originqt[]" value="3"&nbsp;</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;
    }

    }
}

1 个答案:

答案 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>

您必须将valuex[i]一起使用。