Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在单击jquery时获取循环元素的id_Php_Jquery - Fatal编程技术网

Php 在单击jquery时获取循环元素的id

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) { $

我使用循环从数据库中获取数据列表。我循环一个div,但值会根据数据库中的内容而变化。我想从各个div中获取我单击的链接的id。下面是我的html代码

<?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);
});