このテーブルのデータベースからPHPドラッグデータを使用してwhileループを使用してテーブルを作成しています。ダイナミックテーブル内のボタンは、一度だけJQuery関数を実行します
HTML:
<div id="divCenter" class="box">
<div style="width: 166px; position: absolute; left: 642px; top: 20px; height: 44px;">
<img src="../../images/logo.png" width="142" height="33">
</div>
<div id="mainDiv">
<div id="navi"></div>
<div id="infoi"></div>
<table id="hor-minimalist-b">
<div id="bgDimmer"></div>
<div id="divContent"></div>
<thead>
<tr>
<th scope="col">ID</th>
<th scope="col">First Name</th>
<th scope="col">Last Name</th>
<th scope="col">Team</th>
<th scope="col">Created By</th>
<th scope="col">Created Date</th>
<th scope="col"></th>
<th scope="col"></th>
</tr>
</thead>
<tbody>
<?php while ($row = $getUsersQuery -> fetch(PDO::FETCH_ASSOC)) { ?>
<tr>
<td id="uId"><?php echo $row["uId"]; ?></td>
<td id="fName"><?php echo $row["fName"]; ?></td>
<td id="lName"><?php echo $row["lName"]; ?></td>
<td id="team"><?php echo $row["uTeam"]; ?></td>
<td id="cBy"><?php echo $row["createdBy"]; ?></td>
<td id="uCd"><?php echo $row["uCreateDate"]; ?></td>
<td><input type="button" name="uEdit" id="uEdit" value="Edit" /></td>
<td><a href="deleteUser.php?id=<?php echo $row["uId"] ?>"><input type="button" name="uDelete" id="uDelete" value="Delete" /></a></td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
</div>
私の編集ボタンがポップアップをトリガーするjQueryの機能で注目されています。
はJQuery:
$(document).ready(function() {
$('#uEdit').click(function(){
$('#bgDimmer').toggle();
$('#divContent').toggle().load('editUser.php');
});
});
問題は、テーブルを描画するときにのみ、最初の行の編集ボタンが機能を実行することである私は、私は本当に避けたいと、この作業を取得するためのonclickを追加する必要がありますが、必要ならば私はそうするでしょう。
私の質問には、私の質問が明確になっていることがあります。
私が間違っていたことを私に見せていただきありがとうございます。しかし、なぜ@BhupeshコードはHTMLを編集することなく機能しましたか? – Sand
あなたの歓迎! (function(){}); 'これは、セレクタと一致するすべての要素に対して別々のハンドラを作成します。この場合、idが "uEdit"の最初の要素で停止します(ハンドラはidが "uEdit"の最初の要素に対してのみ作成され、残りは無視されます)。 '$(document).on( 'click'、 '#uEdit'、function(){});これはセレクタに一致するすべての要素に対して単一のハンドラを作成します。したがって、id = "uEdit"の要素がクリックされると、いつでもその関数が呼び出されます。 –
私が知らなかったことを学んだことをありがとう。 – Sand