下拉列表中的jquery目标选定选项

时间:2013-03-14 14:53:18

标签: javascript jquery

<select id="dropdown">
    <option value="200" selected>AMD Athlon 7x</option>
    <option value="300">Core i7</option>
    <option value="400">Core i5</option>
</select>
<select id="dropdown">
    <option value="250" selected>GTX 560 ti</option>
    <option value="350">GRX 680</option>
    <option value="40">ATI 6870</option>
</select>

我根据所选价值计算最终产品的价格。

$('select').change(function() {
});

我需要此功能删除所选属性并将其分配给所选选项,但我不知道如何定位新选择的选项。

4 个答案:

答案 0 :(得分:5)

$('select').change(function() {
     $(this).children(':selected').attr('selected', true);
});

但我不明白为什么你需要这个:)

答案 1 :(得分:1)

像这样:

$('select :selected').change(function(){
  //more code
});

答案 2 :(得分:1)

要获取所选选项,您的下拉列表应首先具有唯一ID

<select id="dropdown1">
    <option value="200" selected>AMD Athlon 7x</option>
    <option value="300">Core i7</option>
    <option value="400">Core i5</option>
</select>
<select id="dropdown2">
    <option value="250" selected>GTX 560 ti</option>
    <option value="350">GRX 680</option>
    <option value="40">ATI 6870</option>
</select>

$("#dropdown1 option:selected");

现在,那就是说,您的下拉菜单会自动更改第一个下拉选择选项。

此外,如果要在选择选项时获取所选选项的值,请使用.val()

$('select :selected').change(function(){
    $("#dropdown1 option:selected").val();
});

答案 3 :(得分:0)

以上示例存在语法错误。以下是不正确的(我试过,它没有工作):

$('select :selected').change(function(){

以下是来自jQuery网站的示例代码(我也尝试了它,它确实有效):

<select name="garden" multiple="multiple">
  <option>Flowers</option>
  <option selected="selected">Shrubs</option>
  <option>Trees</option>
  <option selected="selected">Bushes</option>
  <option>Grass</option>
  <option>Dirt</option>
</select>
/* ... */
<script>
$( "select" ).change(function() {   // <<<<< this is the correct syntax
  var str = "";
  $( "select option:selected" ).each(function() {
    str += $( this ).text() + " ";
  });
})
</script>