如何使用jquery选择下拉选项?

时间:2014-03-26 01:42:15

标签: javascript jquery

我一直试图让这项工作持续一个小时,这太荒谬了。有人请告诉我如何用jquery选择一个下拉选项吗?

HTML

 <select class="my_select_box" name="accepted_orders_customer_number"
 data-placeholder="Choose a Customer Number" style="display: none;">
     <option></option>
     <option value="1">1: go co.2 company</option>
     <option value="2">2: jack brian, banana company</option>
     <option value="3">3: jack marley</option>
     <option value="4">4: jack daniels</option>
     <option value="5">5: mary brian</option>
     <option value="6">6: Cloud Strife</option>
</select>

JQuery的

$(function () {
    $('[name=accepted_orders_customer_number] option').filter(function () {
        return ($(this).val() == 2); //To select jack brian
    }).prop('selected', true);
});

fiddle,我正在使用jquery ui作为下拉列表

编辑:

我需要按值选择它。对不起,我应该马上提到。我不能通过它的索引进行选择,因为它们不会像选项的值那样有意义。

6 个答案:

答案 0 :(得分:1)

给这一点。

$('select.my_select_box').prop('selectedIndex', 2);

答案 1 :(得分:1)

它应该像这个一样简单

Working Fiddle

JQuery的:

$('select>option:eq(3)').attr('selected', true);

标记:

<select>
  <option>1: go co.2 company</option>
  <option>2: jack brian, banana company</option>
  <option>3: jack marley</option>
  <option>4: jack daniels</option>
  <option>5: mary brian</option>
</select>

答案 2 :(得分:1)

您需要在您的小提琴中包含jQuery,并删除HTML标记中style="display: none;"的{​​{1}},它应该按预期工作。

但是,您可以使用以下方法缩短代码:

select

<强> Updated Fiddle

<小时/> 这可能发生冲突,尝试使用:

$('select.my_select_box option[value="2"]').prop('selected', true);

答案 3 :(得分:1)

这很简单:

jQuery(document).ready(function($){
  $('[name=accepted_orders_customer_number]').val('2');
});

http://jsfiddle.net/Qyzx3/7/

当然,我删除了style代码中的select属性。

答案 4 :(得分:0)

有一个更好的选择器:

 $('select.my_select_box > option[value="2"]').prop('selected', true);

Link to working Fiddle

答案 5 :(得分:0)

您只需要.val()

Fiddle Demo

$(function () {
    $('select.my_select_box').val(2);
});

阅读DOM Ready