4

JavaScript関数が呼び出されたときにドロップダウンオプションを表示しようとしています。しかし、最終的にはこれに成功しません。助けが必要 ここに私のコードがあります:

<script>
function showState(str){ 
$('#Acntname').trigger('click');

}
</script>
...
<select class="input_panel" id="Acntname" > 
<option value="0">Select</option>
<option value="1">Equity Share Capital</option>
<option value="2">Deprication Fund</option>  </select>

<input type="text" class="input_panel" id="accountname" onkeyup="showState(this.value)"/>

トリガー関数を使用してドロップダウンを開きましたが、機能しません。

4

4 に答える 4

13

ほら、ドロップダウンでマウスダウンイベントをディスパッチすることでこれを行うことができます..

デモフィドル

JS:

window.showState = function (str) {
    var dropdown = document.getElementById('Acntname');
    var event = document.createEvent('MouseEvents');
    event.initMouseEvent('mousedown', true, true, window);
    dropdown.dispatchEvent(event);
}

編集: これはChrome <53で完全に動作しますが、Firefox と IE では不明です。

于 2013-10-29T07:40:52.120 に答える
2

あなたはこれを行うことができます:

var sel = document.getElementById('Acntname');
var len = sel.options.length;

sel.setAttribute('size', len);

サイズを 1 に戻して閉じます

于 2013-10-29T07:40:10.930 に答える
0

ドロップダウンリストを開くことはできませんが、次のことができる半解決策があります

リストを「開く」には:

$("#Acntname").attr("size","3");

$("#Acntname").attr("size","1");

リストを閉じます。

于 2013-10-29T07:40:43.580 に答える