【发布时间】:2022-01-04 21:59:13
【问题描述】:
我想制作一个接受按钮,当我按下接受按钮时,会显示另一列,它在表格的第一行工作正常,但其他行没有工作。
这是我的 HTML 和 PHP 代码:
<tbody>
<?php
$sql = "SELECT * FROM appointments INNER JOIN patients ON appointments.patientID =patients.patientID WHERE docID='$doctorId'";
$stmt = $conn->prepare($sql);
$stmt->execute();
$i=0;
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
$i++;
extract($row);
echo"<tr>
<td >$i</td>
<td>{$patientFName} {$patientLName}</td>
<td>{$AppStart}</td>
<td>{$AppEnd}</td>
<td id='refuseAccept' style='display:block;'>
<button type='button' class='btn btn-outline-danger'>refuse</button>
<button type='button' class='btn btn-outline-success m-2 acceptPpomentDoc' >accept</button>
</td>
<td id='showOptions' style='display:none; class='m-2' >
<a href='#' title='view Details' class='text-success p-2 addappoment' > <i class='fas fa-calendar-check'></i></a>
<a href='#' title='Edit' class='text-primary p-2 editBtn' ><i class='fas fa-user-edit'></i> </a>
<a href='#' title='Delete' class='text-danger p2 deleteBtn' ><i class='fas fa-user-times'></i> </a>
</td>
</tr>
";
}
?>
</tbody>
这里是 Javascript:
$(document).on('click','.acceptPpomentDoc', function (){
document.getElementById('showOptions').style.display = "block";
document.getElementById('refuseAccept').style.display = "none";
});
【问题讨论】:
-
原因:对于所有显示的记录,您使用单个 Id 作为 showOptions(和 rejectAccept)。解决方案之一是通过将每个操作链接到唯一的 Id 来修改您的代码
标签: javascript php jquery