【发布时间】:2018-07-31 06:55:31
【问题描述】:
我有以下问题:我正在使用 PHP for 循环创建一个 HTML 表。每行都有数据和一个按钮。当用户按下按钮 (id="detail") 时,相应行 (id="patID") 的“id”字段应该存储在 PHP 变量中。我所做的每一次尝试都失败了,因为 javascript 只是使用 id 为“patID”的页面上的第一个元素,并且(据我所知)我没有办法在 PHP 中选择这个元素。这是我的代码:
<?php
if (isset($_POST['search']))
{
//irrelevant details of MySQL PDO-connection omitted
$result = $statement->fetchAll();
if ($result && $statement->rowCount() > 0)
{ ?>
<h2>Ergebnisse</h2>
<table>
<thead>
<tr>
<th>#</th>
<th>Vorname</th>
<th>Nachname</th>
<th>Geburtstag</th>
<th>Klasse/Kurs</th>
<th>Vorerkrankungen</th>
<th>Allergien</th>
<th>Anmerkung</th>
<th>Aktualisiert</th>
<th> Optionen</th>
</tr>
</thead>
<tbody>
<?php
foreach ($result as $row)
{ ?>
<tr id="row">
<td id="patID"><?php echo escape($row["id"]); ?></td>
<td><?php echo escape($row["firstName"]); ?></td>
<td><?php echo escape($row["lastName"]); ?></td>
<td><?php echo escape($row["birthday"]); ?></td>
<td><?php echo escape($row["course"]); ?></td>
<td><?php echo escape($row["preIllnesses"]); ?></td>
<td><?php echo escape($row["allergies"]); ?> </td>
<td><?php echo escape($row["note"]); ?> </td>
<td><?php echo escape($row["created"]); ?> </td>
<td>
<button id="detail">Mehr</button>
</td>
</tr>
<? } ?>
</tbody>
</table>
<?php
}
else
{ ?>
<blockquote><b>Keine Ergebnisse gefunden.</b></blockquote>
<?php
}
}
?>
【问题讨论】:
-
这是一个 javascript 的东西,而不是 PHP。我会添加 jquery、javascript 标签并在此处发布我的 javascript。你需要一个类而不是 ID
-
@ezw 我试图让按钮调用提取 patID 元素的 innerHTML 的 javascript 函数。这总是最终给我第一行的数据。我还尝试将脚本放入 for 循环中,但也没有用。一般来说,我对 javascript 没有太多经验。
-
我为您当前的布局提交了一个解决方案。您需要将这些 ID 更改为类
标签: javascript php pdo