[英]How to refresh a DIV in jquery (mobile)?
更新:抱歉,我不小心將data-dom-cache="true"
行復制到我的 content-div 中。 應用程序從 dom 加載而不是新內容似乎非常合乎邏輯! 我已將其更改為false
,現在它可以完美運行。
我有一個動態生成的列表。 如果有人點擊列表中的條目,用戶將被重定向到數據加載的新頁面(動態)。 加載的數據取決於用戶單擊的列表條目。
當應用程序第一次加載時,一切正常。 但是當用戶單擊另一個列表條目時,顯示的數據與第一次運行時相同。
我玩過 jQuery 的.empty()
函數(清除 div 並附加新數據),但它不起作用。
編輯:
我的headlines.html 文件如下所示:
<div id="content>
<div id="headlineslist">
<ul data-role="listview" data-theme="c" id="headlineslist">
</ul>
</div>
</div>
<script>
$(document).ready(function() {
HeadlinesLoad();
});
</script>
這是 Javascript 文件:
function HeadlinesLoad() {
$.ajax({
type: "POST",
url: "headlines_getter.php",
dataType: 'json',
cache: false,
success: function(data1) {
$.each(data1, function(i, currentObj) {
$('ul#headlineslist').append('<li data-role="list-divider"
class="ui-li ui-li-divider ui-bar-b">' + currentObj.main + '</li>').listview('refresh');
$.each(currentObj.sub, function (j, currentSub) {
$('ul#headlineslist').append('<li>
<a href="headlinesclicked_temp.html" onclick="headlineID(' + currentSub.sid + ')">' + currentSub.name + '</a></li>').listview('refresh');
});
});
}
});
}
function headlineID(hID) {
window.localStorage.setItem("headlineID", hID);
}
function onHeadlinesLoad() {
var hID = window.localStorage.getItem("headlineID");
window.localStorage.removeItem("headlineID");
window.localStorage.clear();
$.ajax({
url: "headlinesclicked_getter.php?hID=" + hID,
success: function(html) {
if(html){
$("#headlineshome").empty();
$("#headlineshome").html(html);
}
}
});
}
這是位於應顯示數據的 HTML 文件中的代碼段(並在用戶每次新點擊時刷新):
<div data-role="content" id="headlineshome"></div>
<script>
$(document).ready(function() {
onHeadlinesLoad();
});
</script>
我不知道為什么它不起作用,所以我向你尋求幫助。
提前致謝。
最好的問候,約翰。
使用 jQuery mobile 更新列表后,請考慮觸發“ create ”事件,但該事件已過時,因此請使用
.page()
在你的清單上是這樣的:
$('ul#headlineslist').page();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.