言語切替プルダウンの方法

formタグは入力フォームや送信フォームを表示させたいときに使用し、その際、必ずaction属性を指定しなければなりません。action属性では、フォームの送信ボタンを押して送信されるデータの送信先を指定します。 method属性では送信するときの転送方法を指定します。

<form action="データの送信先" method="post">
...
</form>

selsectタグで取得した値は以下のように取得することができます。

var idx = obj.selectedIndex;
    var value = obj.options[idx].value; // 値
    var text  = obj.options[idx].text;  // 表示テキスト

今回利用したコードは以下のようになります。

<script>
    function changelang(obj){
      var idx = obj.selectedIndex;
      var value = obj.options[idx].value; 
      window.location.href = '<?= get_site_url(); ?>'+'/'+value+"/";
    }
  </script>

<form method="get" accept-charset="utf-8" id="form_lang"> <select class="mdl-selectfield__select" name="lang" id="select_lang" onchange="changelang(this);"> <option value="ja" >日本語</option> <option value="en" selected="selected">English</option> <?php if(strpos($uri, "/ja/") !== false){ ?> <option value="ja" selected="selected">日本語</option> <option value="en">English</option> <?php }else{ ?> <option value="ja">日本語</option> <option value="en" selected="selected">English</option> <?php } ?> </select> </div> </form>