javascript - 只能发布 while 循环的第一个结果

标签 javascript php while-loop

我正在使用 while 循环来显示查询结果。 while 循环工作正常。在隐藏字段中,我想将 userID 和 accessID 的值发布到用户详细信息页面。我正在使用 javascript 从链接提交表单。我的问题是,无论我单击什么用户名,我都只能发布第一个显示记录的值。我做错了什么?

代码:

<?php
while($row = $result->fetch_array()) { ?>
    <form method="post" action="edit_user.php" id="userForm">
    <tr>
        <td>
            <a href="#" onclick="return(submitForm())"><?php echo $row['firstname'].' '.$row['surname']; ?></a> 
            <input type="hidden" name="userID" value="<?php echo $row['userID']; ?>" />
            <input type="hidden" name="accessID" value="<?php echo $row['accessID']; ?>" />
        </td>
    </tr>
    </form>
<?php } ?>

用于提交表单的 JavaScript:

function submitForm() {
    var form = document.getElementById("userForm");
    form.submit();
}

谢谢。 编辑 - 我不想传递网址中的值。

最佳答案

您正在生成多个 <form> s 内循环,移动你的 <form>外面while循环,如:

<form method="post" action="edit_user.php" id="userForm">
<?php
while($row = $result->fetch_array()) { ?>       
    <tr>
        <td>
            <a href="#"><?php echo $row['firstname'].' '.$row['surname']; ?></a> 
            <input type="hidden" name="userID[]" value="<?php echo $row['userID']; ?>" />
            <input type="hidden" name="accessID[]" value="<?php echo $row['accessID']; ?>" />
        </td>
    </tr>        
<?php } ?>
<a href="#" onclick="return submitForm();">Submit</a>
</form>

关于javascript - 只能发布 while 循环的第一个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23902287/

相关文章:

javascript - WordPress 在 Javascript 文件中访问 CSS 文件

javascript - 使用 jQuery 保存多次点击而不是 1 次

php - 查找最后一次出现的 href

javascript - 幻灯片失控

javascript - JavaScript 中 self.self == self check 的目标是什么?

javascript - ReactJS:如何根据 Prop 的值(value)对对象数组进行排序?

php - 在cakephp中使用别名时如何指定查询选择的字段类型?

php - 获取所有非重复的字符串组合(无论顺序如何)

python - 你能覆盖python中的循环名称吗

java - while 循环忽略我的参数。基本 10 以上 0 以上