2017-08-10 37 views
0

所以我一直有一個unfullfilling的經驗,試圖找出如何自動填充/從另一個頁面上的指定鏈接選擇一個複選框或無線電領域。從另一頁面選擇的頁面鏈接中預填充複選框或無線電字段?

到目前爲止,我已經找到了如何單擊用下面的函數/ HTML形式的網頁上以定向鏈接時選擇特定輸入字段:

腳本:

enter image description here

和HTML(表單的頁面本身):

<a href='' id='select-checkbox1'>Click to Select</a>

是療法通過頁面加載自動激活一個這樣的功能(在窗體頁面上),最初由另一頁面上的鏈接提示?

然後我也在想,也許一個字段可以在與URL中調用的特定哈希目標/錨對應時自動填充。有任何想法嗎?

援助將非常感激,因爲我有使用Javascript/JQuery的專業知識有限...

謝謝。

回答

0

這是可以使用散列將信息從頁面A傳送到頁面B.

這就是如果你不想使用服務器端資源。

頁答:

<a href='pageB.html#myHash' id='select-checkbox1'>Click to Select</a> 

頁B:

$(document).ready(function(){ 
    var hash = location.hash; // Here, it would be "#myHash"... So including the # 

    if(hash=="#myHash"){ 
    $("#checkbox1").prop("checked", !$("#checkbox1").prop("checked")); // that toggles the checked state 
    } 
}); 
+0

好極了!這完全像一個魅力。非常感謝您的幫助! – nr159

0

您可以使用該解決方案從這樣一個問題:How can I get query string values in JavaScript?

例如像這樣:

function getParameterByName(name, url) { 
    if (!url) url = window.location.href; 
    name = name.replace(/[\[\]]/g, "\\$&"); 
    var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"), 
    results = regex.exec(url); 
    if (!results) return null; 
    if (!results[2]) return ''; 
    return decodeURIComponent(results[2].replace(/\+/g, " ")); 
} 

$('#checkbox1).prop('checked', getParameterByName('checkbox1')) 

其他網頁上的鏈接可能是這樣的:

<a href='pagewithcheckbox.html?checkbox1=checked' id='select-checkbox1'>Click to Select</a> 
相關問題