1

私はこれができないことで自分を蹴っています。しかし、私はほとんどすべてを試しました。オプション値リストのオプションをクリックしたときに、ユーザーを特定のページにリダイレクトしたいだけです。これが私の現在のコードです(これは私の質問をよりよく説明するはずです):

<select name="test_redirect">
<option value="1" onclick="document.location = 'http://localhost/shop?item=1';">Item 1</option>
<option value="2" onclick="document.location = 'http://localhost/shop?item=2';">Item 2</option>
<option value="3" onclick="document.location = 'http://localhost/shop?item=3';">Item 3</option>
</select>

私もonChangeを試しました。同じ結果。誰かがこれを手伝ってくれませんか?君たちありがとう。

4

6 に答える 6

3
document.querySelectorAll("[name=test_redirect]")[0].addEventListener('change',
   function () {
       window.location = "http://localhost/shop?item=" + this.value;
   });

これは比較的新しいブラウザ(querySelectorAlladdEventListener)に依存しますが、原則は同じです。 clickオプションでトリガーされないので、を使用する必要がありchangeます<select>。コードを少し統合することもできます。

http://jsfiddle.net/5n5ZE/

于 2013-01-30T05:49:34.187 に答える
1
<select id="test_redirect">
<option value="1">Item  1</option>
<option value="2">Item 2</option>
<option value="3">Item 3</option>
</select>

javascript

var val = document.getElementById("test_redirect").value;
window.location.href = "http://localhost/shop?item=" + val; 

jquery

$("#test_redirect").change(function(){

    var val = $(this).val();
    window.location.href = "http://localhost/shop?item=" + val;

 });
于 2013-01-30T05:48:44.847 に答える
0

これを試してください(value各オプションのページのリンクを指定してください)

<select name="test_redirect" onchange="window.location.href=this.form.test_redirect.options[this.form.test_redirect.selectedIndex].value">
于 2013-01-30T05:50:38.297 に答える
0

<select>個々のオプションではなく、イベントハンドラーをにバインドする必要があります。

<select name="test_redirect" onchange="location.assign('http://localhost/shop?item=' + this.options[this.selectedIndex].value)">
<option value="1">Item 1</option>
<option value="2">Item 2</option>
<option value="3">Item 3</option>
</select>
于 2013-01-30T05:51:17.313 に答える
0

これはあなたの行を節約します:

<select onchange="location = this.options[this.selectedIndex].value;">
<option value="1">Item  1</option>
<option value="2">Item 2</option>
<option value="3">Item 3</option>
</select>
于 2013-01-30T05:52:07.707 に答える
0

これを試して

<select name="test_redirect" onchange="location.href='http://localhost/shop?item='+this.value">
<option value="1">Item 1</option>
<option value="2">Item 2</option>
<option value="3">Item 3</option>
</select>
于 2013-01-30T05:53:46.283 に答える