options.dataUrl = urlObj.href;
$.mobile.changePage($page, options);
dataUrl包含參數jQuery Mobile的,如何使用changePage更新changeHash和參數
http://example.com/#sales?p=page
,但上面的代碼僅更新只用哈希的URL,新的頁面加載後的完整網址。 ..網址更改爲
http://example.com/#sales
並不適用?p = page。
下面是完整的功能,檢查最後幾行....
function getSPList(urlObj, options){
var pageName = urlObj.hash.replace(/.*p=/, ""),
pageSelector = urlObj.hash.replace(/\?.*$/, "");
$.ajax({
url:"getSPList.php",
dataType: 'json',
data: {p: pageName},
success:function(result){
if (result) {
var $page = $(pageSelector),
$header = $page.children(":jqmData(role=header)"),
$content = $page.children(":jqmData(role=content)"),
markup = "<ul data-role='listview' data-filter='true' data-filter-placeholder='Search Salesperson...'>";
for (var i = 0; i < result.sp.length; i++) {
markup += "<li><a href='#addClient?p="+ result.sp[i].id +"' data-transition='slide'>" + result.sp[i].name + "</a></li>";
}
markup += "</ul>";
$content.html(markup);
$page.page();
$content.find(":jqmData(role=listview)").listview();
options.dataUrl = urlObj.href;
options.changeHash = true;
$.mobile.changePage($page, options);
}
}
});
return
}
你是指在頁面之間傳遞參數?如果'dataUrl'包含'#sales?p = page',它將顯示所有內容,而不僅僅是'#sales'。 – Omar
不,只是希望地址欄在加載新頁面後顯示帶有參數的完整url。 –
它應該能夠正常工作'$ .mobile.changePage(page,{changeHash:true,dataUrl:urlObj.href});'你上面的例子使用'options'不起作用。 – Omar