在 jquery 中从 while 循环获取特定值时遇到问题

trouble getting specific value from while loop in jquery

当从 php while 循环输出时,我无法获取 post 的特定 ID。 这是我创建的一个循环 -

$sql = "SELECT * FROM table ";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        $id = $row['id'];
        $item  =$row['item'];
           echo '<li class="pane" data="'.$id.'">'.$item.'</li>'

    }
}

然后我有一个滑动功能来发起呼叫,我正在使用警报进行测试,并快速编写了示例来简单地解释我的问题..-

$("#tinderslide").jTinder({
    onDislike: function (item) {
        alert($('li').attr('data'));
    },
    onLike: function (item) {
     alert($('li').attr('data'));
    },
});

我在数据库中有 3 个项目,id 分别为 115、116 和 117,但我只能将其设置为警报 117..

如果 $('li') returns 一个数组,这可能就是你想要的

 onLike: function (item) {
     alert($('li').each(function(){
           alert($(this).attr("data"));
     });
}

来自 jTinder 的文档https://github.com/do-web/jTinder

onDislike (Optional) - Default value: null - Callback function, if a user dislikes a item. Parameter assigned: The current li item.

onLike (Optional) - Default value: null - Callback function if a user likes a item. Parameter assigned: The current li item.

你需要这样写:

$("#tinderslide").jTinder({
    onDislike: function (item) {
        alert(item.attr('data'));
    },
    onLike: function (item) {
     alert(item.attr('data'));
    },
});