Php 在单击jquery时获取循环元素的id
我使用循环从数据库中获取数据列表。我循环一个div,但值会根据数据库中的内容而变化。我想从各个div中获取我单击的链接的id。下面是我的html代码Php 在单击jquery时获取循环元素的id,php,jquery,Php,Jquery,我使用循环从数据库中获取数据列表。我循环一个div,但值会根据数据库中的内容而变化。我想从各个div中获取我单击的链接的id。下面是我的html代码 <?php $query = $student->conn->prepare('SELECT * FROM groups'); $query->execute(); $result = $query -> fetchAll(); $count = 0; foreach ($result as $row) { $
<?php
$query = $student->conn->prepare('SELECT * FROM groups');
$query->execute();
$result = $query -> fetchAll();
$count = 0;
foreach ($result as $row) {
$count = $count + 1;
$groupName = $row['GpName'];
$groupAdmin = $row['GpAdmin'];
$groupPurpose = $row['GpPurpose'];
$output = "42";
echo "<div class='animated flipInY col-sm-4'>
<div class='tile-stats'>
<div class='icon'><i class='fa fa-tags'></i></div>
<div class='count'>$count</div>
<h3 id='groupName'>$groupName</h3>
<a id='$groupName' class='display' href='#'><p>Click here display group information.</p></a>
</div>
</div>";
}
?>
声明
它在控制台中工作,但在页面上不工作 让我觉得您正在使用Ajax,这意味着您正在将事件绑定到不存在的元素。因此,在替换内容后使用事件冒泡或绑定事件
$(document).on('click', '.display', function () {
var id = $(this).prev().val();
alert(id);
});
看一下。现在您正在创建重复的id(
id='groupName'
),但这不起作用。ID必须是唯一的。之后没有next()
(同级)。显示。你可以去掉那行代码。通常var id=$(this).prev('h3').attr('id')
,改为使用console.log()
。发布呈现的HTML,而不是PHP。“它在控制台中工作,但在页面上不工作”内容是否加载了Ajax?“它在控制台中工作,但在页面上不工作”-确切地说,jquery代码是在哪里定义的?如果它在一个单独的.js文件中,加载在头中(或它所指的实际html之前的任何地方),那么情况就是这样。我同意这一点,如果它是ajax请求,您将需要委托。
$(document).on('click', '.display', function () {
var id = $(this).prev().val();
alert(id);
});