2

New Bie:我有一个使用 json 从数据库中获取format并显示到列表视图中的列表数据。但我仍然混淆如何获取列表视图的选定索引,这是我的代码:

<script>
    function loadListTips(){
    $('#message').html('Loading...');
    $.ajax({
        type: 'get',
        url: "http://10.0.2.2/compfest/ajax/belajar/list_tips.php",
        success: function(response){
            var html = '';
            $.each(response, function(index,item){
                html += '<li>';
                html += '<a>';
                html += '<span class="judul">' + item.judul + '</span>';
                html += '</a>';
                html += '</li>';
            });
            $('#penyakit_list').html(html);
            $('#penyakit_list').listview('refresh');
            $('#message').html('');
        },
        error: function(e){
            alert('Error: ' + e);
        }
    });
}
</script>

希望有人帮助我。

4

2 回答 2

4

您不需要选择的索引li来绑定click事件。您可以尝试使用事件委托来绑定您的点击事件。将 click 事件绑定到ul并将其委托给li

$("#penyakit_list").on("click", "li a", function() {
  //your code
}); 

另一种选择是将点击绑定到document

$(document).on("click", "#penyakit_list li a", function() {
  //your code
}); 

要访问索引,只需在 click 事件中使用它:

$(this).closest("li").index();

你刚才点击this的在哪里。a所以现在你的点击事件看起来像这样:

$(document).on("click", "#penyakit_list li a", function() {
      alert($(this).closest("li").index()); // this will give the index of the li. You could store it in a variable and send it via ajax.
}); 
于 2013-07-30T16:32:38.053 回答
1

+1 去 bundleofjoy!

我无法添加评论,因为我的“声誉点”低于添加评论的限制值。

我用这个答案作为alert($(this).closest("li").attr("id"));

祝你有美好的一天!

于 2014-08-26T07:01:09.970 回答