Javascript window.location使用导致连续循环
我试图在URL中附加一个基于特定条件的查询字符串。我遇到的问题是,以下代码导致页面连续循环:Javascript window.location使用导致连续循环,javascript,window.location,Javascript,Window.location,我试图在URL中附加一个基于特定条件的查询字符串。我遇到的问题是,以下代码导致页面连续循环: function taoExtendedIdleTime() { if (trackingJson.loginType === 'explicit') { var myURL = window.location; window.location = myURL + "&debugMode=true&setIdleTime=60000"; } } taoExt
function taoExtendedIdleTime() {
if (trackingJson.loginType === 'explicit') {
var myURL = window.location;
window.location = myURL + "&debugMode=true&setIdleTime=60000";
}
}
taoExtendedIdleTime();
为了纠正这个问题,我尝试了以下方法,检查这个查询是否已经存在。如果没有,请添加:
function taoExtendedIdleTime() {
if (trackingJson.loginType === 'explicit') {
var myURL = window.location;
if (myURL.indexOf("&debugMode=true&setIdleTime=60000") == -1) {
window.location = myURL + "&debugMode=true&setIdleTime=60000";
}
}
}
taoExtendedIdleTime();
在我的开发环境中,这根本不会执行。当我将它添加到控制台时,我得到以下错误:uncaughttypeerror:myURL.indexOf不是一个函数,并且引用了这个代码段的第四行:if(myURL.indexOf…)
非常感谢您提供的任何帮助/指导 基于,窗口。location
是一个位置
对象(不是字符串
),因此它没有索引方法。不过,您可能对它的search
属性感兴趣
或者,如果您想更干净,可能会有所帮助。基于,窗口。location
是一个位置
对象(不是字符串
),因此它没有索引方法。不过,您可能对它的search
属性感兴趣
或者,如果你想变得更干净,可能会有帮助。因为你正在尝试获取一个对象。window.location将返回您的位置对象。您要查找的是window.location.href
,它将返回当前位置的url
function taoExtendedIdleTime() {
if (trackingJson.loginType === 'explicit') {
var myURL = window.location.href;
window.location.href = myURL + "&debugMode=true&setIdleTime=60000";
} }
taoExtendedIdleTime();
因为你想得到一个物体。window.location将返回您的位置对象。您要查找的是window.location.href
,它将返回当前位置的url
function taoExtendedIdleTime() {
if (trackingJson.loginType === 'explicit') {
var myURL = window.location.href;
window.location.href = myURL + "&debugMode=true&setIdleTime=60000";
} }
taoExtendedIdleTime();
您似乎正在重新加载页面,因为trackingJson.loginType始终是“显式”的,您介意包括trackingJson对象的构建方式吗?您似乎正在重新加载页面,因为trackingJson.loginType始终是“显式”的,您介意包括trackingJson对象的构建方式吗?单击“发送”太早了!事实上,我最终改变了它,但也从函数中删除了它,因为一位同事认为这是不必要的。一切正常!再次感谢!点击发送太早了!事实上,我最终改变了它,但也从函数中删除了它,因为一位同事认为这是不必要的。一切正常!再次感谢!