1

特定の値のドロップダウン オプションを事前に選択する必要がある場合は、次のように使用できます。

$('select option[value="123"]').attr('selected', 'selected');

ただし、含まれるテキストに基づいてオプションを事前に選択する必要がある場合は、次のすべてを行う必要があります。

        $('select option').each(function() {
            var $this = $(this);
            if($this.text() == 'My Text') {
                $this.attr('selected', 'selected');
            }
        });

最初の方法のようにすべてのオプションタグをループせずに、値ではなくテキストに基づいてそれを行う方法はありますか?

4

4 に答える 4

2

:contains()セレクターをチェックしてください。

http://api.jquery.com/contains-selector/

$('select option:contains("My Text")').prop('selected', true);
于 2012-06-20T05:08:55.067 に答える
1

:containsセレクターを使用します。例えば:

$('select option:contains("My Text")').attr('selected', 'selected');
于 2012-06-20T05:09:16.563 に答える
0

私はセレクターfilter()よりも速いと思うものを使用します::contains

$('select option')
  .filter(function(){ return $(this).text() === 'my text' })
  .prop('selected', true)
于 2012-06-20T05:12:55.903 に答える
0

:contains脇に置く

$('select option').each(function() {
    this.selected = this.text == 'lol2'
});
于 2012-06-20T05:16:50.000 に答える