我有以下PHP代码来生成一个表,其中的行的列具有以下属性:“id”、“lastname”和“firstname”。我想为每一行添加一个按钮,删除相应的行并让这一行尝试这样做:echo '<td><input type="button" value="Delete" onclick="deleteRow('+$i+')"></td>';在下面的代码中。但是,它正在打印$i(1,2,3,4,…)的值,。。。这是我希望与按钮关联的行号),而不是将删除按钮专用于每一行(使用下面的代码,它不会创建任何按钮,除非我特别删除'+$i+'部分)。怎么了?

<table>
                <tr>
                <td></td>
                <td>id</td>
                <td>Last Name</td>
                <td>First Name</td>
                </tr>
                <?php
            $i = 1;
            foreach ( $names['result'] as $a ){       // $a is an array
                echo '<tr>';
                echo '<td><input type="button" value="Delete" onclick="deleteRow('+$i+')"></td>';   // issue is here
                echo '<td>' . $q['id'] . '</td>';
                echo '<td>' . $q['lastName'] . '</td>';
                echo '<td>' . $q['firstName'] . '</td>';
                echo '</tr>';
            }
?>
</table>

最佳答案

.php语言中的字符串连接运算符,而+javascript语言中的连接运算符。
您应该使用onclick="deleteRow('.$i.')"
然后,在结束循环之前,使用$i++;

10-07 19:14
查看更多