问题描述:项目登录界面连续用到两个window.location.href, 第一个是用来给后台赋session,第二个是用来跳转到首页。
问题出现了,第一个window.location.href不生效。即session登录到首页后session没有。我在页面debug 一步一步走,却可以运行第一个window.location.href, 也赋了session, 同时也跳转到了首页。 但是只要不debug页面, 就不会运行第一个window.location.href,偶尔也会运行(不稳定)。
最终我的解决办法是 把第二个window.location.href改成window.open(), 这样一来问题解决了。 但是弹出一个窗口也许客户不满意, 可以试一下 var newWin = window.open(newUrl,"_blank"); window.open(‘‘,‘_self‘); window.opener=null;window.close();newWin.focus(); 这样能比较好的满足要求,后三句话是自动关闭第一个窗口,如果大家有更好的解决办法 请回复。
以上是别人的解决方案
=====================================================
下面是本人的实际项目的解决代码,可供参考:
if(menuName == ‘报表控件及打印客户端下载‘){
// 说明:如果1和2调换位置,就会出现不生效的情况,原因不明
window.open("printService/nxPrint.exe", "_blank"); // 1
window.location.href="webOffice/WebOffice.rar"; // 2
return false;
} else if (menuName == ‘帮助手册‘){
window.location.href="template/helpManual.doc";
return false;
}