如何根据价值获得选择权

时间:2012-07-27 20:15:48

标签: jquery

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

例如:

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

我想根据价值找到option2。

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

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

3 个答案:

答案 0 :(得分:5)

您需要:contains选择器。

$('option:contains("option2")', 'select')

答案 1 :(得分: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 );
});

答案 2 :(得分:0)

试试这个:http://jsfiddle.net/WEWcc/ ,例如提到没有值属性的Rocket请尝试:http://jsfiddle.net/cbyTf/

可以编写自定义filter-ish函数。 :)

<强>码

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);
})​