我将参数传递给页面,并使用 data-url 属性检索,它工作正常。但是,如果我刷新该页面,则 url 参数将不可用。为此应该怎么做。请帮忙。
问问题
237 次
2 回答
1
您可以将 url 参数存储在 HTML5 的localStorage
. 通常,localStorage
除 IE 外,所有浏览器(包括移动设备)都支持,它存在一些稳定性问题。
要存储 url 参数,
window.localStorage.setItem("param", yourParam);
然后,检查该项目是否存在于 中localStorage
,如果存在,则从那里获取并使用。
if(window.localStorage["param"] != undefined)
{
var param= window.localStorage["param"];
}
完整的工作流程
var param = "", local = window.localStorage;
if(local["param"] != undefined)
{
param = local["param"];
}
else
{
//store the param in a database/in the server session and retrieve from there.
param = getFromServer();
//set item in localStorage
local.setItem("param", yourParam);
}
有关更多信息,请访问此link
于 2013-06-15T08:05:28.793 回答
0
此问题的解决方法是检查 是否data("url")
包含问号?
。如果不是,您可以从window.location.href
.
这段代码:
$.mobile.changePage('car-details.html', {
data: {
id: 'my_id'
}
});
创建 URL: .../car-details.html?id=my_id
下面的代码处理了正常转换的情况和页面刷新的情况。在页面刷新的情况下,参数值是从window.location.href
var passedId = (($(this).data("url").indexOf("?") > 0) ? $(this).data("url") : window.location.href ).replace( /.*id=/, "" );
有关完整示例,请查看此StackOverflow 答案
于 2013-06-23T21:51:10.667 回答