GETフォームを介して送信された変数を取得するjavascript関数を実装しました。しかし、私はいくつかの複数の選択ドロップダウンがあり、GETを使用すると、選択されたすべてのオプションが別のパラメータとして送信されます。以下の複数の選択を検討:GETで複数選択を取得
<select multiple="multiple" name="currencies">
<option id="option1" value="option1">Option 1</option>
<option id="option1" value="option2">Option 2</option>
<option id="option3" value="option3">Option 3</option>
</select>
私は2つまたはこれらの項目のすべてを選択し、これはGETのURLです:それは分割と
http://example.com/mypage.html?currencies=option1¤cies=option2
したがって、JavaScript関数は、最初のオプションだけを取得します文字列に&が見つかった場合は、別の要素が見つかった場合に必要です。
方法はありますか?
http://example.com/mypage.html?currencies=option1,option2
これはjQueryのを使用してJS関数です:
<script>
function getQueryVariable(variable) {
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
if (pair[0] == variable) {
return pair[1];
}
}
}
</script>
GETのURLの形式は、Web標準である - それはどこでも動作します。要求された選択肢はJSと一緒にハックされる可能性がありますが、@Davidが処理用のJSコードを標準で扱う方が良いと指摘しています。 – Rudu