2016-08-25 10 views
0

参考選択しなさい:私のユーザーが複数の値を選択することができるように、私のページに上記を使用してhttps://silviomoreto.github.io/bootstrap-select/options/ブートストラップは、選択 - バリュー

イムを。 しかし、私は単に選択した値のテキストを表示したいですが、それは不可能であるか、それとも間違っているのですか?私は後で、ユーザーに結果を表示したいと は、私はすべての値を取得し、「選択」の値 をしたい...

<div class="form-group"><label class="col-lg-2 control-label">Service(s):</label> 
    <div class="col-lg-9"> 
    <select class="selectpicker" multiple title="Select from the following..." data-width="100%" id="serviceList"> 
    </select></div></div> 

    <script> 
    var services = [{"value":"3e197221-e48b-44b8-a2aa-2054638f3bbc","label":"Service1","price":30.000000},{"value":"cd909812-ff6e-484b-96e3-c344ba20e140","label":"Service2","price":10.000000}]; 
    $('.selectpicker').on('changed.bs.select', function (e, clickedIndex, newValue, oldValue) { 
      var v = $(".selectpicker option:selected").val(); 
      var result =[]; 
      for (var i = 0; i < services.length; i++){ 
       // look for the entry with a matching value 
       if (services[i].value === v) { 
        result.push(services[i].label); 
        console.log(services[i].label); 
       } 
      } 
      for (i = 0; i < result; i++) { 
       console.log(result[i]); 
      } 

     }); 
    </script> 

答えて

0

は、これは働いていた、長いったらしいようです。

var selectedServices =[]; 
$('.selectpicker').on('changed.bs.select', function (e, clickedIndex, newValue, oldValue) { 



     for (var key in services) { 
      if (key == clickedIndex) { 
       console.log(key + ' is ' + services[key]); 
       selectedServices.push(services[key].label); 
       console.log(services[key].label); 
      } 

     } 
2

選択したオプションの配列からすべてのラベルを「抜きたい」とします。

$('.selectpicker').on('changed.bs.select', function() { 

    selectedServices = $.map($(this).find("option:selected"), function(o) { return o["label"]; }); 

} 
関連する問題