5

HTMLを変換するJQueryプラグインを使用した経験がある人はいないかと思います

<select> 
  <option> Blah </option> 
</select>

コンボボックスを何か(おそらくdiv)に変換します。ここで、アイテムを選択すると、リンクをクリックするのと同じように機能します。

おそらくjavascriptを使用して選択イベントを処理し(私のjavascriptの知識は現時点では少し荒廃しています)、コンボボックスの値を「スイッチ」することができますが、これはハックのようです。

あなたのアドバイス、経験、推奨事項は大歓迎です。

4

4 に答える 4

8

簡単な解決策は、使用することです

$("#mySelect").change(function() {
  document.location = this.value;
});

これにより、選択ボックスに onchange イベントが作成され、選択したオプションの値フィールドに格納されている URL にリダイレクトされます。

于 2008-09-08T10:53:42.327 に答える
2

Divをクリックしたときにどこにリンクしたいのかわかりませんが、おそらく次のようなものがうまくいくでしょう:

<select id="mySelect">
  <option value="1">Option 1</option>
  <option value="2">Option 2</options>
</select>
<div id="myDiv"/>

次の JQuery は<div>要素のリストを作成し、オプションの値に基づいて URL に移動します。

$("#mySelect option").each(function() {
    $("<div>" + $(this).text() + "</div>").appendTo($("#myDiv")).bind("click", $(this).val(), function(event) {
        location.href = "goto.php?id=" + event.data;
    });
});
$("#mySelect").remove();

これはあなたが望むことをしますか?

于 2008-09-08T10:20:03.017 に答える
1

選択ボックスを個別に定義せずにリダイレクトとして使用できるようにしたい場合は、次のようなものを試してください。

$("[id*='COMMON_NAME']").change(function() {
    document.location = this.value;
});

それに応じて選択ボックスに名前を付けます。

<select id="COMMON_NAME_001">...</select>
<select id="COMMON_NAME_002">...</select>

これにより、「COMMON_NAME」を含むすべての ID に対して onchange イベントが作成され、<option>値のリダイレクトが行われます。

于 2009-01-10T16:32:46.090 に答える
0

'select'のJavaScriptのこのビット:

onchange="if(this.options[this.selectedIndex].value!=''){this.form.submit()}"

これは理想的ではありませんが(私が使用しているASP.NET MVCでのフォーム送信は、URLにルーティングエンジンを使用していないように見えるため)、その役割を果たします。

于 2008-09-08T02:14:11.093 に答える