2017-02-10 266 views
1

我有一個引導模式只有一個「選擇」字段,我用它來選擇顏色或性別剪裁或大小爲我的beckend網絡上選定的服裝產品應用程序。如何初始化(並重新初始化)通過JavaScript引導選擇

我通過ajax獲取數據,返回一個帶有{Id,Text,Val}的json數組,用於顏色/性別或大小(id區分顏色/性別/大小),並在添加新選項之前清除我的選擇。

這個作品很好地與標準的HTML選擇..

<select id="productProperty" class="form-control" multiple></select> 

輸出與標準選擇:

output with standard select

但沒有任何工程與自舉選

<select id="productProperty" class="form-control selectpicker" multiple></select> 

輸出自舉選擇:

[Output with bootstrap select[2]

這裏是我的Ajax調用

 $.ajax({ url: 'theUrl', 
       type: "GET", 
       data: { requiredInput: 'that' } 
      }).done(function(response) { 

       $("#productProperty").empty(); 
       var selectHtml = ""; 
       $.each(response.data, function(index, item) { 
        selectHtml += "<option value='" + item.Id + "' " + disabled_ + ">" + item.Name + "</option>"; 
       }); 

       $("#productProperty").html(selectHtml); 
       $("#productProperty").selectpicker('refresh'); 

      }); 

我有我的佈局(MVC)文件,因爲我與日期選擇做$( 'selectpicker')。selectpicker()和數據表

如何用bootstrap-select解決這個問題? 謝謝。

+0

難道你不想保持那種能夠一次看到所有選項的選擇,就像第一張圖片中的選項一樣嗎?如果你想這樣做,你不能使用引導選擇插件 –

回答

0

爲什麼你不通過jQuery構建整個事物?

首先,選擇下拉菜單:

$.ajax({ url: 'theUrl', 
      type: "GET", 
      data: { requiredInput: 'that' } 
     }).done(function(response) { 

      $.each(response.data, function(index, item) { 
       html += "<option value='" + item.Id + "' " + disabled_ + ">" + item.Name + "</option>"; 
      }); 
     }); 

然後關閉標籤:

var html = ""; 
html += '<select id="productProperty" class="form-control selectpicker" multiple>'; 

然後通過你的Ajax去

html += "</select>"; 

追加它,你應該是所有好。

$(".container").append(html); 
+0

這樣做,我這樣做,但仍然不顯示選項。相同的代碼適用於標準選擇(通過刪除'selectpicker'類) – Mxo