1

したがって、次の HTML があります。

<div class="toolsIndexSelectContainer">
      <select id="Clients" class="toolsIndexSelect disableElement">
          <option>Item</option>         
          <option>Item 2</option> 
          <option>Item 3</option> 
      </select>
</div>

クラスtoolsIndexSelectContainerで周囲のdivをクリックすると、ドロップダウンして内部のアイテムを表示するように選択したいと思います。私はこのjQueryを持っています:

$("div[class~='toolsIndexSelectContainer']").click(function () {
    $(this).children("select").focus();
});

ただし、focus() は機能しません。click() を試してみましたが、Chrome が爆発してしまいました。これを行う方法はありますか?

4

3 に答える 3

3

いいえ、select要素でそれを行うことはできません.ドロップダウンオプションを表示するようにトリガーすることはできません。

その他のオプションは、基本的に機能をシミュレートするドロップダウン プラグインをダウンロードすることselectです。

このddSlickプラグインは、選択ボックスのプロパティをシミュレートしているようで、ドロップダウン オプションを開く方法もあります。

select$('#demoSetSelected').ddslick('open');ドロップダウン オプションを開くのと同じように、プラグインの open メソッドを使用できます。

于 2013-02-14T19:41:36.393 に答える
1

これはちょっとしたハックですが、うまくいくようです:

$(".toolsIndexSelectContainer").click(function () {
    $(this).find("#Clients").focus();
});
$("#Clients").focus(function(){
    this.size=$(this).find('option').length;
}).blur(function(){
    this.size=1;
});

練習するフィドル: http://jsfiddle.net/As93t/

于 2013-02-14T20:06:34.390 に答える
1

jquery Comboboxのようなものを使用できます 。選択をコンボボックスに変換します。それ以外の場合、これは通常の選択要素では不可能です

于 2013-02-14T19:45:40.783 に答える