我通过会话将一些参数从一个页面传递到另一个页面,我面临的问题是每个参数都会反映在URL中,我认为这不是正确的方法。所以我想在导航到其他页面的同时从URL中删除所有参数。
请建议我存档的方式。
这是我得到的网址
http://localhost:58736/index.html#bankedit//10000422%20%20%20%20%20%20%20%20%20%20%20%20?PayeeId=4&BankName=State%20Bank%20%20
我用来导航的代码是:
cellTemplate: function (container, options) {$('<a/>').addClass('hyperlink')
.text('Edit |')
.on('click', function () {
var Edit;
Demo.app.navigate("bankedit/?AccountNumber=" + options.data.AccountNumber + "&PayeeId=" + options.data.PayeeId + "&BankName=" + options.data.BankName );
sessionStorage.setItem('AccountNumber', options.data.AccountNumber);
sessionStorage.setItem('PayeeId', options.data.PayeeId);
sessionStorage.setItem('BankName', options.data.BankName);
sessionStorage.setItem('Type', "Edit");
}).appendTo(container);
$('<a/>').addClass('hyperlink')
.text(' Delete')
.on('click', function () {
options.component.removeRow(options.rowIndex);
}).appendTo(container);
}
用于检索参数值:
sessionStorage.getItem("BankName"),
在bankedit.js页面
答案 0 :(得分:0)
抱歉延误。您可以尝试history
API来操纵浏览器中显示的网址。
在加载完成后尝试关注:
var orig=document.location.href;
var noParam=urlWithoutParams.substring(0,urlWithoutParams.indexOf("#"));
history.replaceState({'Original':orig},'',noParam);
这将使用没有任何查询字符串参数的href替换当前href。有关历史API的更多信息,请访问 MDN docs
答案 1 :(得分:0)
Tkanks分享你的经验很多。我能用会话来解决它。我刚刚用Demo.app.navigate("bankedit/?AccountNumber=" + options.data.AccountNumber + "&PayeeId=" + options.data.PayeeId + "&BankName=" + options.data.BankName );
PaMobile01.app.navigate("bankinformationedit/");
并在会话中保留我的其余参数