使用 jquery 和 Ajax 在 seletpiker 中动态设置值

Dynamically Set Value in seletpiker using jquery and Ajax

我正在从数据库中获取城市列表,我想在编辑操作时显示所选城市。

我正在使用 Ajax 从数据库中获取值。 这就是 Work Nicely。我从我的控制器获取响应数据。 现在的问题是我无法在 selectpiker 上设置值。 我在 Ajax 响应中得到城市名称。

我尝试了一些示例但没有成功。

这是 Ajax 代码。

    $.ajax({  
     type: "GET",
     url: urlForGetCityList,             
     dataType: 'Json',                
     success: function(response){ 
         console.log(response.cityName);

          // This is What i Tried For getting SeletBox Selected.
         var $select = $('#city');
         $select.val(response.city).trigger('change');

         // I have also Tried Some Selct2 Option for it. But it didn't work.
         $("#city").select2("val", response.city);

        // And at Last I have tried for like simple select box.
        $("#city").val(response.city);

    });

None 这个工作正常。 这是 Selectpiker 的 HTML 代码。

<div class="col-md-4">
<div class="form-group">
    <label for="field-3" class="control-label">City *</label> 
    <select class="selectpicker" data-live-search="true" data-style="btn-white" name="city" id="city"
        title="Select City">
        <option value="city1">City 1</option>
        <option value="city2">City 2</option>
    </select>
</div>
</div>

你已经达到了一半你是个问题只是这个 select piker 没有显示 selected 值,因为你应该这样检查 this。 所以试试这个。

$('select[name=city]').val(response.city);
$('.selectpicker').selectpicker('refresh');