当我在javasacript中使用“windows.location.href”时,我得到“Components.Exception(”提示被用户中止“,Cr.NS_ERROR_NOT_AVAILABLE)”异常。我的代码是:
function checkCookie(){
var value = null;
var cookieName='UserDetailsCookie';
value=ReadCookie(cookieName);
if(value != null){
var url='<%=request.getContextPath()%>/jsp/admin.jsp';
window.location.href = url;
}
document.loginForm.userName.focus();
}
function ReadCookie(name)
{
name += '=';
var parts = document.cookie.split(/;\s*/);
for (var i = 0; i < parts.length; i++)
{
var part = parts[i];
if (part.indexOf(name) == 0)
return part.substring(name.length);
}
return null;
}
我正在on body
的onLoad事件上调用此方法<body onLoad="javascript:checkCookie();">
有人知道为什么会抛出这个异常吗?
答案 0 :(得分:3)
我不是百分百肯定,但我认为这是由于行
document.loginForm.userName.focus();
因为这会取消使用window.location.href ='xxx'完成的网址加载。
无论如何,通常在设置location.href属性后不应该有任何代码行。
希望有所帮助,我知道它已经过时了,但我回答了moomoochoo,因为他的评论并非“那么久”。