部分品牌型号手机使用小程序时网页用sessionStorage、cookie、localStorage三者之一存入信息,跳转到下一个界面取出信息时为空,改为通过url传递参数。得解决传递中文时的编码问题
如
var hr = "/wxPreCase/addCase?insuredName="+name+"&insuredphone="+phone+
"&phoneIMEI="+imei+"&policyType="+type+"&faultDesc="+desc+"&province="+province+
"&city="+city+"&area="+area+"&address="+newlyCustAddress+"&hotLine="+hotLine;
//要注意进行两次编码
var hr1 = encodeURI(hr);
var hr2 = encodeURI(hr1);
location.href = hr2
然后再跳转到下个页面时也需对获取的参数进行两次解码
var name = getParameter("insuredName");
var name2 = decodeURI(decodeURI(name))
var desc = getParameter("faultDesc");
var desc2 = decodeURI(decodeURI(desc))
getParameter.js
//根据传递过来的参数name获取对应的值
function getParameter(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");
var r = location.search.substr(1).match(reg);
if (r!=null) return (r[2]); return null;
}