1

これが私のテンプレートのスニペットです(バックボーンとマリオネット):

<div class="form-group">
    <label for="some_id" class="align-left col-sm-4 control-label">Some Label</label>
    <div class="col-sm-7">
        <select id="some_id" style="width:150px;" data-minimumresultsforsearch="10" />
    </div>
</div>

次に、テンプレートを使用するビューの onShow メソッドで:

types = ['Type 1', 'Type 2'];
this.$("#some_id").select2({
  data: types
}); 

これは select2 v4.0 です。タイプは表示されますが、minimumresultsforsearch は効果がありません。デバッグ方法がわかりません。どんな提案も歓迎します!

参考までに、いくつかの構成を html に入れようとしている理由は、私が知る限り、onShow で同じ構成オプションを使用する必要があり、その要素を更新する必要があるすべてのメソッドで再度使用する必要があるためです。私は多くのコードを繰り返しています。それらをhtmlに入れることができれば、関連するオプション、つまりjavascriptで「data:」を使用するだけでよいと思います。

4

1 に答える 1

2

data-次のように属性を設定する必要があります。

data-minimum-results-for-search="25"

.data()これはasにロードされ、.data( "minimumResultsForSearch" )によって取得されselect2ます。同じことについては、jQuery の解析規則をご覧ください。

$("#myselectbox").select2();
<link href="http://cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/css/select2.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/js/select2.min.js"></script>

<select id="myselectbox" data-minimum-results-for-search="25">
<option>1</option>
<option>2</option>
<option>3</option>
<option>14</option>
<option>15</option>
<option>26</option>
<option>37</option>
<option>38</option>
<option>19</option>
<option>22</option>
<option>222</option>
<option>22</option>
<option>1222</option>
</select>

于 2015-09-01T11:55:47.680 に答える