jQuery默认选择注入选项

时间:2014-09-26 09:19:17

标签: javascript jquery

我有一系列的选择,我不幸要注入一个名为'请选择'的选项作为第一个选项。然后,我想在页面上的所有选项中选择“请选择”。由于我无法更改HTML,这是我唯一的选择。

然而,我的代码似乎只是选择了第一个选择'请选择'。

HTML:

<select name="" id="" class="cartDdlOptions">
  <option value="1">Some Value</option>
  <option value="2">Some Value</option>
  <option value="3">Some Value</option>
  <option value="4">Some Value</option>
</select>

<select name="" id="" class="cartDdlOptions">
  <option value="1">Some Value</option>
  <option value="2">Some Value</option>
  <option value="3">Some Value</option>
  <option value="4">Some Value</option>
</select>

<select name="" id="" class="cartDdlOptions">
  <option value="1">Some Value</option>
  <option value="2">Some Value</option>
  <option value="3">Some Value</option>
  <option value="4">Some Value</option>
</select>

jQuery的:

$(window).load(function(){


  $('.cartDdlOptions').prepend('<option value="" selected>Please Select</option>');
  var selectOperator = $(".cartDdlOptions option").eq(0);

  $(".cartDdlOptions").each(function(){

    if (selectOperator.val() == ""){
      console.log(selectOperator);
      selectOperator.attr("selected", true); 
    }

  });

});

Working example.

真的无法解决这个问题。帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

你只需要用两行就可以做到这一点,而不是用这种方式编写很多代码:

$(".cartDdlOptions").each(function(){

      $(this).prepend('<option value="0" selected>Please Select</option>'); //add please select option
      $(this).val("0") // set it as selected


  });

如果您不想设置属性,那么您可以按@ T.J Cowder指出:

$(".cartDdlOptions").each(function () {

    $(this).prepend('<option value="" selected>Please Select</option>'); //add please select option
    $(this).val("") // set it as selected

});

实施例

http://jsfiddle.net/cqrs2g8w/