1

我将如何根据该选项的值获得选择选项。

例如:

<select>
  <option>option1</option>
  <option>option2</option>
  <option>option3</option>
</select>

我想根据值找到 option2。

var temp = "option2"; 
$(select).get(temp);

所以我使用 get() 作为我想要做的一个例子我知道没有一个 get ,但我希望它返回 option2 作为一个 jquery 对象。

4

3 回答 3

5

你想要:contains选择器。

$('option:contains("option2")', 'select')
于 2012-07-27T20:19:02.470 回答
1

编辑@Rocket 提出的每个优点::

如果使用值,请尝试以下操作:

var val;

$( 'select' ).change(function(){
  val = $( 'option:selected', this ).val();
});

如果使用内部文本,试试这个:

var text;

$( 'select' ).change(function(){
  text = $( 'option:selected', this ).text();
});

如果抓住元素试试这个:

var elem;

$( 'select' ).change(function(){
  elem = $( 'option:selected', this );
});
于 2012-07-27T20:19:11.710 回答
0

试试这个: http: //jsfiddle.net/WEWcc/ 或者像 Rocket 提到的没有值属性试试这个:http: //jsfiddle.net/cbyTf/

可以编写自定义过滤器功能。:)

代码

var temp = "option2";
$(document).ready(function() {

        var filter = temp;
        $('option').each(function() {
            if ($(this).val() == filter) {
                alert($(this).val());
            } else {

            }
            $('select').val(filter);
        })

})​

没有值属性

var temp = "option2";
$(document).ready(function() {

        var filter = temp;
        $('option').each(function() {
            if ($(this).html() == filter) {
                alert($(this).html());
            } else {

            }

        })
   $('select').val(filter);
})​
于 2012-07-27T20:22:14.853 回答