当我向数据库添加新内容时,页面没有更新,我遇到了问题。所以我想添加一个刷新按钮。
请问我该如何做呢?
当我向数据库添加新内容时,页面没有更新,我遇到了问题。所以我想添加一个刷新按钮。
请问我该如何做呢?
location.reload(true)
不起作用,因为URL将具有哈希字符串。
为了模拟本机移动过渡效果,jQuery Mobile执行Ajax请求并将<div data-role="page">
元素插入第一个页面中,从而从多页网站创建单个页面站点(具有导航、标记内置)。
然而,该团队缺乏对如何处理时间相关内容的远见。我个人通过为我要获取新副本的链接添加属性来解决这个问题。
$('body').delegate('a[data-cache=false]', 'click', function() {
var $this = $(this);
$('[data-url="' + $this.attr('href') + '"]' ).remove();
});
这段代码监听了一个点击事件(或者是触摸事件等),移除了缓存的 div 元素,然后让 jQuery 请求一个新的副本。
虽然有一些解决方案,比如 data-ajax="false"
和 rel="external"
,但是这些将会限制导航系统的功能。此外,jQuery 团队已经意识到了围绕该问题的一些问题,并正在着手进行完整的导航重写。http://jquerymobile.com/blog/2011/05/13/jquery-mobile-team-update-week-of-may-9th/。
刷新页面不需要使用jQuery,只需调用location.reload(true)
。
通过将第一个(也是唯一的)参数设置为true
,我们可以强制从服务器刷新页面,而不仅仅是从缓存中重新加载页面。
<button onclick="location.reload(true)">重新加载页面</button>
? - Nick