2017-02-20 27 views
3

當設置當前值爲多個值時,我在選擇JS時有問題。我從JSON格式的Ajax響應中設置,這裏是我的代碼。對於selectize設置當前選擇的多個值JS

$(".rule_list").on("click",function(e) { 
     e.preventDefault(); 
     $.ajax({ 
      url: 'getruledata, 
      dataType: 'json' 
     }) 
     .done(function(data){ 
      console.log(data); 
      $selectz[0].selectize.setValue(data[0].control_country); 
     }) 
     }); 

這裏我的HTML代碼

<select id="select-country" placeholder="Pick a countries..."></select> 

這裏代碼

var $selectz = $('#select-country').selectize({ 
     maxItems: null, 
     valueField: 'iso', 
     labelField: 'nice_name', 
     searchField: 'nice_name', 
     options: {!! $country !!}, 
     create: false, 
     }); 

這裏從JSON響應我的價值格式

[{"id":2,"name":"XSA 2","user_id":"3","control_device":"Mobile","control_country":"US,CA","offer_id":"2","rule_id":"1","status":"2"}] 

我被困在這步驟,如果"control_country":"US,CA"(多值)在將當前值設置爲輸入表單時不起作用,但是如果"control_country":"US"(單值)正常工作

回答

1

您需要使用方法addItem(value, silent)。正如docs中所解釋的,addItem「選擇」項目,其中傳遞true爲「silent」將會將更改應用於原始輸入。

1

可以設置多個值selectize這樣的:

$selectz[0].selectize.setValue([optionid,optionid]); 

所以,在你的榜樣應該是:

$selectz[0].selectize.setValue(["US","CA"]); 
相關問題