2016-03-21 9 views
1

リンク(同じページへのリンク)をクリックしてドロップダウンリストの値を設定しようとしていますが、私はセレクトのために設定したいリンクにあります。
私はこのようにしてみましたが、それはうんざりしているので動作しませんでした。すべてのヘルプははるかに高く評価されるだろうリンクからクリックしてURLからの値を持つドロップダウンリストの値を設定する方法

<html> 
<body> 
<select id="select"> 
<option value="one">Pen</option> 
<option value="two">Paper</option> 
<option value="three">Book</option> 
</select> 

<a class="link1" href="page.php?cc=three">Set select value</a> 

<script> 
    function $_GET(param) { 
     var vars = {}; 
      window.location.href.replace(location.hash, '').replace( 
       /[?&]+([^=&]+)=?([^&]*)?/gi, // regexp 
       function(m, key, value) { // callback 
       vars[key] = value !== undefined ? value : ''; 
       } 
      ); 

     if (param) { 
      return vars[param] ? vars[param] : null;  
     } 
      return vars; 
    } 

    var cc = $_GET('cc'); 

    var elmnt = document.getElementsByClassName('link1'), 
     selectClasse = document.getElementById('select'); 

      function setSelect() { 
      for (var i = 0; i < elmnt.length; i++) { 
       elmnt[i].onclick = function() { 

       selectClasse.value = cc; 
        } 
     window.history.pushState('Form', 'My form', this.getAttribute("href")); 
     return false; 
     }; 
    } 
} 
setSelect(); 

</script> 
</body> 
</html> 


ここで私が使用するコードです。

+0

このように、タグをクリックして選択するには値を設定しますか?しかし、あなたはそれがページの読み込みを引き起こしたくないのですか? – Liam

+0

いくつかの ''タグがありません – Matthijs

+0

はい@Liamは私がやろうとしているものです! – Samwise

答えて

0

リンクとそのURLパラメータでこれを行う場合は、

回答に基づいて:https://stackoverflow.com/a/979996/2956448

だからあなたが好きそれを行うことができます。

var params = {}; 

if (location.search) { 
var parts = location.search.substring(1).split('&'); 

for (var i = 0; i < parts.length; i++) { 
    var nv = parts[i].split('='); 
    if (!nv[0]) continue; 
    params[nv[0]] = nv[1] || true; 
} 
} 

var cc = params.cc; 

var element = document.getElementById('select'); 
element.value = cc; 
関連する問題