2013-01-01 43 views
1

我試圖通過url爲兩個複選框傳遞值,這兩個複選框都具有不同的名稱,只需要查看它們是否已選中或未選中。下面是HTML代碼如下所示:如何爲複選框值構建url參數

<input type="checkbox" name="one" value="one" checked id="one" > 
<input type="checkbox" name="two" value="two" id="two" > 

我怎麼編碼這個URL中,讓複選框,可以檢查或什麼的URL,例如未選中:

www.site.com?one=unchecked&two=checked 
+0

你有服務器端腳本語言,或者你想實現它的客戶端? – jtheman

+0

如果您將html表單模式設置爲GET,表單變量將在Url上傳遞。它產生的正是你展示的內容,但是如果你能控制事物的服務器端,你就可以獲得這些信息(隱式地)。如果這不符合要求,您能否澄清問題的參數? –

+0

我需要在瀏覽器的客戶端執行此操作,而不是使用服務器端腳本。 Cj,我想要做的是能夠設置複選框使用從URL中的值選中或未選中。例如,如果未選中某個值,該框將被取消選中。 –

回答

0

你可以用一個小的PHP做:

<input type="checkbox" name="one" value="one" id="one" <?= ($_GET["one"] == "checked" : "checked" : "" ?> > 
<input type="checkbox" name="two" value="two" id="two" <?= ($_GET["two"] == "checked" : "checked='checked'" : "" ?>> 

....或者你提到它,在客戶端用javascript:

document.body.onload = function() { 
    var hash = window.location.hash().substr(1); 
    var parts = hash.split("&"); 
    for(var i = 0; i < parts.length; i++) { 
     var variable = parts.split("="); 
     if(variable[0] == "one") // if the key of a get-variable equals "one" 
      document.getElementById("one").setAttribute("checked"); 
     else if(variable[0] == "two") // if the key of a get-variable equals "two" 
      document.getElementById("two").setAttribute("checked"); 
    } 
}; 

我希望它有幫助...

+0

謝謝atreju。如果我的網頁上有上述JavaScript,我將如何通過網址將其轉移到下一頁?我試圖做的是點擊鏈接時,我希望將該值傳遞到下一頁link 這可能嗎? –