javascript只在第一行表上执行

时间:2015-06-30 14:51:47

标签: javascript php forms

我有一个重复15次的表格行。然后在其中一个字段上执行JS。问题是它只在表的第一行执行JS。我做错了什么?

PHP表脚本:

    for ($x = 1; $x <= 15; $x++) {
      echo '<tr>';
        echo '<td><input size="6" id="qty" name="qty' . $x . '" type="text"/></td>';
        echo '<td><input onfocus="calcTotal()" type="text" name="tot' . $x . '" id="tot" size="6" readonly/></td>';
echo '</tr>';
    }

JS:

function calcTotal() {
    var myqty = document.getElementById('qty').value; 
    var myrate = <?php echo json_encode($therate); ?>;
    myResult = myqty * myrate;
    var elem = document.getElementById("tot");
    elem.value = myResult;
}

1 个答案:

答案 0 :(得分:1)

因为您正在重复其ID为qty的INPUT。你不能重复DOM ID,否则会遇到这样的问题。