我有一个多页 jquerymobile 网站,第一页上有一个列表。列表的每个元素都指向第二页,其内容取决于按下的列表元素。具体来说,我在第一页中有一个“位置”列表,在第二页中有特定位置的详细信息。
<ul id="location_list" data-role="listview">
<li><a href="#location_page" data-id="1231">Location 1</a></li>
<li><a href="#location_page" data-id="4056>Location 2</a></li>
<li><a href="#location_page" data-id="7569">Location 3</a></li>
</ul>
其中 data-id 属性是位置标识符。为了传递参数,我在列表元素上添加了一个 jQuery 函数,该函数找出按下的元素 data-id 值并将其存储在窗口变量中的一个变量中,然后再调用下一页。
$('#location_list').find("a").live("click",function(event){
window.location_id = $(this).data("id");
});
第二页将读取 window.location_id 中的值并显示正确的内容。
一切正常,直到我刷新第二页。如果我这样做,我用来传递参数的变量(正确)为空,并且没有加载任何内容。我尝试在页面的 URL 中传递值(使用 href="#location_page?locid=1231" 链接列表)并解析 document.location 值,但它在逐页迭代中不起作用(如果我打印第二页的 URL 我只有“#location_page”而不是“#location_page?locid=1231”)
谁能帮我解决我的问题?也许有更好的方法在页面之间传递参数或使传递参数工作的方法。
谢谢你的帮助。