2015-09-27 51 views
0

我想創建一個重定向頁面,但我需要使用兩個參數來創建地址鏈接。客戶端重定向使用地址欄參數

<!DOCTYPE html> 
<!-- 
Test file 
--> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<!--<meta http-equiv="refresh" content="0;url=link" />--> 
</head> 
<body> 
<p>Redirecting...</p> 
<script language="javascript"> 
    var chapterx = document.getElementById("chapter").value; 
    var linex = document.getElementById("line").value; 
    var link = "http://www.mypage.com/help?chapter=" + chapterx + "," + linex; 

    //window.prompt(link); 
    window.location = link; 
</script> 
</body> 
</html> 

我從我的電腦加載的頁面,而不是從服務器上測試此。

我有關於HTML和JS的非常基本的概念,我無法弄清楚我做錯了什麼。

我從Redirect from an HTML page讀了一些東西來創建該代碼。

另外,任何方式來寫重定向前的'鏈接'變量看看會發生什麼?

另外我安裝了Firebug,但我無法找到我聲明的變量來查看它們的狀態。

+0

「chapterx」和「linex」的值應該是多少?你在哪裏得到它們? – Lucio

+0

@Lucio都是數字,地址欄中的參數。 –

+1

然後,您只需從URL中獲取它們,而不是從DOM中獲取它們。這將幫助你,因爲其餘代碼是好的:http://stackoverflow.com/q/5448545/1505348 – Lucio

回答

1

您的代碼是正確的。但它不會工作,因爲JavaScript檢測該線路上的錯誤:

var chapterx = document.getElementById("chapter").value; 

你不必與chapter ID您的網頁上的任何元素。您的下一行也是錯誤的,因爲頁面上沒有line ID的元素。

我將此添加到您的代碼:

<div id="chapter"></div> 
<div id="line"></div> 

<p>Redirecting...</p>之後,它成功地重定向我: http://www.mypage.com/help?chapter=undefined,undefined

希望這有助於:)

+0

謝謝,我現在明白,我打電話是不存在的東西。我試圖設置我在地址欄中創建新地址的值。我的舊頁面看起來像www.old.com/help.hmtl?chap=1&lin=32,新地址是www.new.com/help.hmtl?chapter=1,32 –

0

閱讀張貼盧西奧我的鏈接請輸入以下代碼

<!DOCTYPE html> 
<!-- 
Test file 
--> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<!--<meta http-equiv="refresh" content="0;url=link" />--> 
</head> 
<body> 
<p>Redirecting...</p> 
<script language="javascript"> 
    var chapterx = decodeURIComponent(window.location.search.match(/(\?|&)chap\=([^&]*)/)[2]); 
    var linex = decodeURIComponent(window.location.search.match(/(\?|&)lin\=([^&]*)/)[2]); 
    var link = "http://www.myweb.com/help.html?chapter=" + chapterx + "," + linex; 
    window.location = link; 
</script> 
</body> 
</html> 
相關問題