选择jquery未使用ajax响应数据选择的框选项

时间:2017-12-29 07:22:52

标签: javascript jquery html ajax

我有一个更新表单,其中数据由ajax调用预先填充。除了选择框之外,所有数据都填充得很好。我使用jquery来填充数据。

我的选择代码:

<div class="test " id="test">                       
<select id="gender2" name="gender2" class="required">
  <!--  <option value="" selected></option>  -->
        <option value="F">Female</option>
        <option value="M">Male</option>
</select>
</div>

Ajax电话:

$.ajax({
    type: "POST",
    url: 'fetchData',
    data: {
        'custId': custID,
    },
    success: function (paxUpdateData) {
        var cust = jQuery.parseJSON(paxUpdateData);
        $("#firstName").val(cust.firstName);
        $("#middleName").val(cust.middleName);
        $("#gender2").val(cust.gender);
    },
    error: function (e) {
        alertify.error('Error in retreiving details');
    }
});

我尝试了这些但没有奏效:

$('gender2 option[value='+cust.gender+']').attr('selected', 'selected');
$('#gender2 option[value='+cust.gender+']').prop('selected', true);
$("div.test select").val(cust.gender);

注意:我从支持的数据中获取数据,因为cust.gender = M代表男性,而cust.gender = F代表女性。

4 个答案:

答案 0 :(得分:1)

尝试

$('#gender2').change(function() {var selectvalue =$('#aioConceptName').find(":selected").val(cust.gender);});

答案 1 :(得分:0)

$("#gender2").change(function() {

    //your ajax

});

试试这个

答案 2 :(得分:0)

对于select框,它需要change()个事件,

 $.ajax({
       type: "POST",
       url: 'fetchData',
       data: {
         'custId': custID,
       },
       success: function (paxUpdateData) {
          var cust = jQuery.parseJSON(paxUpdateData);
          $("#firstName").val(cust.firstName).trigger('change');
          $("#middleName").val(cust.middleName).trigger('change');
          $("#gender2").val(cust.gender).trigger('change');
      },
      error: function (e) {
         alertify.error('Error in retreiving details');
      }
});

答案 3 :(得分:0)

请参阅此演示正在运行,现在您可以将您的ajax函数放在document ready函数中,并请检入ajax响应console.log()值与您的选择选项值相同。

$(document).ready(function(){
$('#gender2').val("O");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="test " id="test">                       
<select id="gender2" name="gender2" class="required">
        <option value="F">Female</option>
        <option value="M">Male</option>
        <option value="O">Other</option>
</select>
</div>