我刚刚设置了我的第一个jQuery Mobile网站,效果很好,只有一个漏洞: 在我的一个html文件中,我有三个页面元素。
第一种是显示过滤器选项,以从内部Web数据库(WebSQL)获取数据。 第二个以列表视图显示结果(大约150,每行1行),带有超链接。 单击超链接时,用户转到第三页,显示所选记录的详细信息,并使用jqm提供的后退按钮。
$("#page2").unbind ().bind ("pagebeforeshow", function () {
var $content = $("#page2 div:jqmData(role=content)");
$content.html (html);
var $ul = $content.find ("ul");
$ul.attr("data-role", "listview");
$ul.listview ();
});
这显示了所有记录 - 比方说 - 12月3日。 在第二页,我添加了两个按钮(前一天/第二天)
现在,我找到了一种方法(可能不是正确的方法),在用户单击其中一个按钮的情况下,将第二页上的数据替换为适当日期的数据。我使用新记录重建html并用新数据替换div元素的旧内容:
$("#data").html (html);
当我第一次登录第2页时,我可以点击记录,查看详细信息(第3页)并返回第2页。但是当我来回移动一天或多天然后转到页面时3,后退按钮仍然让我回到12月3日,而不是我搬到的日期。
这可能是因为我只更改了第2页的html。
如何更改此行为?还有另一种方式去第二天吗?
顺便说一句。我不能使用加载所有记录的分页插件,只显示隐藏所有其他记录的一天,因为这样会检索所有记录并为很多记录构建布局需要花费太多时间。
希望有人能给我一个正确的方向。