javascript - 如何获取单击的 ListView 项的 ID。 [javascript/jquery/jquery 移动]

标签 javascript jquery html jquery-mobile local-storage

我需要有关如何检测哪个 <li> 的建议是用户点击/单击,然后写入点击/单击的“ID”<li>到 Localstorage 中,然后使用保存的 Localstorage 检索详细信息页面的数据。

我是 javascript/jquery 的新手,如果您能提供一些简单的示例代码,我们将不胜感激。

我知道如何编写 Localstorage、读取 Localstorage、从服务器 API 获取 JSON 数据、为每个 <li> 生成具有唯一 ID 的 Listview 循环.

我需要的是,如何用JS来制作<li>可点击(链接到详细信息页面)并同时写入本地存储。

我已经尝试过:

$('.liClass').click(function() { //block of code to write Localstorage };

但是<li>不可点击,并且没有键/值写入本地存储。更不用说检测哪个<li>被点击(这个我不知道)。

请多多指教,谢谢。

代码更新:

//Show restaurant listing - NOTE: This is not first page. Link from other Page.

$('#restaurantList').on("pagebeforecreate", function() {
    $.getJSON("http://mydomain.com/api/restaurant", function( data ) {
        function rstListing(data) {
            if ($.isEmptyObject(data) === true) {
                alert ('JSON return empty');
        } else {
            for (i=0; i<data.length; i++){
                $('#restaurantListing').append('<li id="' + data[i].restaurant_id + '" class="rstList"><img src="http://mydomain.com/file/img/' + data[i].restaurant_logo + '"><h2>' + data[i].name + '</h2><p>' + data[i].city + '</p></li>');
                $('#restaurantListing').listview('refresh');
            }
        }
        }
        rstListing(data);
    }
              );
});

//Listview link to Detail Page

$(document).ready(function(){
  $('.rstList').click(function() { 
     var id = $(this).attr("id"); // Get the ID
      alert(id);
      console.log(id);
  });
});

还尝试过:

//Listview link to Detail Page

$('#restaurantList').on("pageload", function() {
  $('.rstList').click(function() { 
     var id = $(this).attr("id"); // Get the ID
      alert(id);
      console.log(id);
  });
});

最佳答案

您不需要做任何<li>元素可以由您自己点击,当您向任何元素添加点击事件时,该事件将在点击该项目时触发。

您的问题基本上是当事件绑定(bind)到该元素时,该元素未加载。因此,您必须像这样在文档就绪事件中添加代码。

$(document).ready(function(){
  $('.liClass').click(function() { 
     var id= $(this).attr("id"); // Get the ID
  };
});

关于javascript - 如何获取单击的 ListView 项的 ID。 [javascript/jquery/jquery 移动],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22293572/

相关文章:

javascript - CORS 奇怪的行为

javascript - Resharper 抑制一些 Javascript 智能感知

javascript - 如果元素不存在,如何将样式属性添加到该元素,或者仅使用 Javascript 将给定样式添加到预先存在的样式属性?

jquery - 元素位置

javascript - 用于 jasmine 测试的 jquery-validation 插件导入

html - CSS 缩放属性在 FF 中的行为不同

html - 使用 HTML 和 CSS 剪切形状

javascript - 如何使用 jQuery Masonry 处理不同宽度的元素?

打开操作之前的 Jquery 移动面板

html - z-index 未按预期工作(Chrome 和 Opera)