使用jquery更改所选选项不起作用

时间:2014-08-30 10:51:02

标签: jquery

我的HTML是

<select class="form-select ajax-processed shipping-recalculation-processed" name="customer_profile_shipping[addressbook]" id="edit-customer-profile-shipping-addressbook"><option value="none">-- Choose --</option>
<option selected="selected" value="20">tehran-righthand</option>
<option value="39"></option>
</select>

我想尝试通过单击另一个html元素来更改所选选项,同时我还提到了此选择选项上的ajax设置更改, 我的目标是隐藏这个元素,并根据我的html更改此选择选项的值(然后应该触发ajax)

(function($){
  //$('#edit-customer-profile-shipping-addressbook').hide();
  $('.user-profile-address').click(function(){
    var id=$(this).prop('id');
    $('#edit-customer-profile-shipping-addressbook option[value="'+id+'"]').prop("selected",true);
///also I try this , I check click event handle correctly and passed true id (etc 20,39,none_
  //$('#edit-customer-profile-shipping-addressbook ').val(id);
    $('#edit-customer-profile-shipping-addressbook').change();
    //console.log(id);
    //console.log($('#edit-customer-profile-shipping-addressbook').val());
  });

  })(jQuery);

我尝试这段代码,选择选项在外观上有所改变,但是当检查元素时,我看到select元素没有改变。

1 个答案:

答案 0 :(得分:0)

解决方案是(我应该在更改ID后调用.change)

  $('#edit-customer-profile-shipping-addressbook').val(id).change();