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

PHP Table脚本:

    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;
}

最佳答案

因为您要重复输入ID为qty的输入。您不能重复DOM ID,否则会遇到这样的问题。

10-08 06:52
查看更多