使用 javascript 重定向

Redirection using javascript

我有一个 ASP.NET MVC 5 应用程序,我想在其中使用 Javascript:

执行重定向
var sPageURL = decodeURIComponent(window.location);
console.log(sPageURL);
var lengthUrl = sPageURL.split('/').length;
var NewUrl = '';
sPageURL.split('/').forEach(function(item, index) {
  if (index < lengthUrl - 2) NewUrl += item;
  if (index == lengthUrl - 1) {
    if (item == "Organisateur") NewUrl += sPageURL.split('/')[lengthUrl - 2];
  }
});
console.log(NewUrl);
window.location = NewUrl;

我得到输出:

http://localhost:31569/Event/2

http://localhost:31569/Event/localhost:31569

问题是新 URL 与旧 URL 连接在一起:我希望 http://localhost:31569/Event/2localhost:31569 替换。

我尝试了 window.location =window.location.href =window.location.replace 并且得到了相同的结果。

所以我需要知道:

  1. 这个问题的原因是什么?
  2. 我该如何解决?

使用 window.location = "/" 应该导航到网页的主机名,我认为这就是您想要做的。

您遇到的问题听起来好像您没有在要导航到的 URL 前面包含协议(http://https://)。