我的页面上有一个包含大量行的dataTable。每行都有一个id,name,surname和action列。在操作列中有一个textarea,您可以在其中添加注释和提交该注释的按钮。当我提交评论时,我希望页面将自己定位在原来的位置,但我无法弄清楚如何。有什么想法吗?
以下是代码片段:
$result = mysql_query($query, $connection);
while ($row = mysql_fetch_array($result)) {
echo "<tr>";
echo "<form method='post' action='saveComment.php#position_".$row['id']."'>";
echo "<td hidden><input hidden name='id' readonly value=" . $row['id'] . " /></td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['surname'] . "</td>";
echo "<td><input type='submit' name='submit' value='Comment'/></td>";
echo "<a id='position_".$row['id']."'></a>";
echo "</tr>";
}
我尝试将当前行的id传递给保存注释的脚本,它确实传递了值,之后它应该将它放回原位,但它似乎不起作用:/
答案 0 :(得分:1)
使用Ajax提交表单,并成功:
window.location = 'saveComment.php#position_<? echo $row['id']; ?>';
答案 1 :(得分:1)
我发现它如何与锚点一起使用!问题是我在重定向回原始页面时没有在saveComment.php脚本中传递id。
表单中的代码:
if ($_POST['submit']){
$id=$_POST["id"];
header('Refresh: 0.5; URL=originalPage.php#position_' . $id);
//...rest of code goes here...
}
就是这样:))
答案 2 :(得分:0)
您需要使用
<a name='position_".$row['id']."'></a>
而不是
<a id='position_".$row['id']."'></a>