window.location 没有正确设置新值
window.location not setting to new value correctly
我目前在 javascript 网站上 运行 遇到一些问题。我正在尝试重定向到一个新页面,但是我没有将重定向 url 设置到我传入的页面,而是将其连接到现有 url.
的末尾
例如,如果我当前在 www.whosebug.com/questions
并且想去 www.whosebug.com/questions/ask
,则 url 变为 www.whosebug.com/questions/www.whosebug.com/questions/ask
当我将包含 URL 的变量输出到控制台时,它显示正确
var nextPage = window.location.hostname + data.redirectUrl + "?confirmationtype=success";
console.log(nextPage);
window.location.href = nextPage;
上面的输出将是 www.whosebug.com.au/questions/ask
但会重定向到 www.whosebug.com/questions/www.whosebug.com/questions/ask
我做了一些搜索,在很多情况下它似乎与表单上的 onpost
方法有关,但我看不出这在我的页面上会是一个问题,而且我正在使用轮询计时器方法来触发这些调用,因此页面 posts 不应成为一个因素。此外,如果我尝试 onpost="return false"
使用相同布局的其他页面无法 post :S
如有任何帮助,我们将不胜感激。
Url 没有协议 ("http:") 变成相对的 Url - 所以当你尝试设置 window.location
时它不会执行导航。
类似于:
var nextPage = window.location.hostname + data.redirectUrl + "?confirmationtype=success";
console.log(nextPage);
window.location = "http://" + nextPage;
您可以使用window.location.protocol
代替"http://",您可以在上面的代码中使用window.location
或windows.location.href
。
请注意,您的示例显示了一些奇怪的 window.location.href(nextPage);
,这是函数调用,但 href
不是函数。
我目前在 javascript 网站上 运行 遇到一些问题。我正在尝试重定向到一个新页面,但是我没有将重定向 url 设置到我传入的页面,而是将其连接到现有 url.
的末尾例如,如果我当前在 www.whosebug.com/questions
并且想去 www.whosebug.com/questions/ask
,则 url 变为 www.whosebug.com/questions/www.whosebug.com/questions/ask
当我将包含 URL 的变量输出到控制台时,它显示正确
var nextPage = window.location.hostname + data.redirectUrl + "?confirmationtype=success";
console.log(nextPage);
window.location.href = nextPage;
上面的输出将是 www.whosebug.com.au/questions/ask
但会重定向到 www.whosebug.com/questions/www.whosebug.com/questions/ask
我做了一些搜索,在很多情况下它似乎与表单上的 onpost
方法有关,但我看不出这在我的页面上会是一个问题,而且我正在使用轮询计时器方法来触发这些调用,因此页面 posts 不应成为一个因素。此外,如果我尝试 onpost="return false"
使用相同布局的其他页面无法 post :S
如有任何帮助,我们将不胜感激。
Url 没有协议 ("http:") 变成相对的 Url - 所以当你尝试设置 window.location
时它不会执行导航。
类似于:
var nextPage = window.location.hostname + data.redirectUrl + "?confirmationtype=success";
console.log(nextPage);
window.location = "http://" + nextPage;
您可以使用window.location.protocol
代替"http://",您可以在上面的代码中使用window.location
或windows.location.href
。
请注意,您的示例显示了一些奇怪的 window.location.href(nextPage);
,这是函数调用,但 href
不是函数。