2013-03-13 111 views
1

我有兩個域:project1.comproject2.com。後者包含一個子域名爲login.project2.com。我需要根據他的輸入將用戶重定向到這個地方,即前者login.project2.com。 (不要問關於邏輯的問題,或者爲什麼我這樣做,這僅僅是因爲我被要求去做)。URL重定向到另一個域的子域

我曾嘗試以下:

function redirectToPage() { 
    if (someVar == someValue) { 
     document.location = 'http://www.login.project2.com'; // does not work 
     document.location = 'www.login.project2.com'; // does not work 
     document.location = 'http://login.project2.com'; // does not work 
     document.location = 'login.project2.com'; // inval 

     //only of the above is left uncommented at a time 
    } 
} 

但是,當我在地址欄直接輸入第四之一,它使我想要的頁面。我錯在哪裏?

+1

[使用了window.location代替(http://stackoverflow.com/questions/2430936/whats-the-difference-between-window-location-and-document-location-in-javascrip) – Bergi 2013-03-13 17:21:52

+0

使用window.location.href ='login.project2.com' – alwaysLearn 2013-03-13 17:25:01

+0

@new_developer - 不是沒有協議! – mplungjan 2013-03-13 22:33:05

回答

2
  1. document.location已被棄用,並且可以只讀
  2. 如果你有另一個域,你需要的協議了。如果您將它放在地址欄上,而不是在腳本中,則這由瀏覽器添加。
  3. 這是很好的做法,包裹在括號中的語句,因此我加他們爲你

下面是如何使用JavaScript重定向 - 我用替換所以舊地址替換的歷史記錄,這樣的後退按鈕不破

function redirectToPage() { 
    if (someVar == someValue) { 
    window.location.replace('http://login.project2.com'); 
    } 
} 
相關問題