2013-04-25 128 views
0

我有一個包含多個選擇列表的頁面。在用戶做出選擇並點擊一個按鈕後,我會將所選的選項和值添加到包含相同選擇列表的不同頁面中。使用URL查詢將選擇列表值設置爲選中

我想通過循環查詢並設置相應選擇列表的值來使用查詢在新頁面上選擇適當的值,以便新頁面上的列表鏡像它們剛剛來自的頁面。

這是一個用於測試的代表性查詢字符串; http://website.com/sign-up/?tf-from-country=Uruguay&tf-to-country=Canada

這是6小時的研究失敗,但我不知道爲什麼。

if (window.location.search) { 
//console.log(window.location.search.substr(1).split('&')); 

    var qs = window.location.search.substr(1).split('&'); 

    for (var i=0; i< qs.length; i++){ 
     var param = qs[i].split('='); 
     // console.log('setting field', param[0], 'to', param[1]); 
     //$('.' + param[0]).addClass('foundit'); 
      // select list set to param 
      var element = '.' + param[0]; 
      $(element).val(param[1]).attr("selected", true); 
      //console.log(element); 
    } 

} 

回答

0

若要獲取URL的瓦爾使用的功能:

function getUrlVars() 
{ 
    var vars = [], hash; 
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); 
    for(var i = 0; i < hashes.length; i++) 
    { 
     hash = hashes[i].split('='); 
     vars.push(hash[0]); 
     vars[hash[0]] = hash[1]; 
    } 
    return vars; 
} 

這將返回所有變量的關聯數組。

+0

謝謝,但從查詢字符串獲取數據不是問題。設置選擇列表上的值是問題。 – Fettabachi 2013-04-25 11:31:13

相關問題