JQuery 插件 select2 的 data-* 属性与 Backbone 配合得好吗?
Do JQuery plugin select2's data-* attributes play nice with Backbone?
这是我的模板中的一个片段(Backbone 和 Marionette):
<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>
然后在使用模板的View的onShow方法中:
types = ['Type 1', 'Type 2'];
this.$("#some_id").select2({
data: types
});
这是select2 v4.0。类型出现,但 minimumresultsforsearch 没有任何效果。我不确定如何调试,欢迎任何建议!
仅供参考,我尝试在 html 中进行一些配置的原因是,据我所知,我必须在 onShow 中使用相同的配置选项,然后在任何方法中再次使用该元素需要更新的地方,所以我重复了很多代码。如果我可以将它们放在 html 中,我想我只需要在 javascript.
中使用相关选项,即 'data:'
您需要像这样设置 data-
属性:
data-minimum-results-for-search="25"
这将作为 .data( "minimumResultsForSearch" )
加载到 .data()
,并由 select2
提取。请查看 jQuery 的 parsing rules 以获得相同的信息。
$("#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>
这是我的模板中的一个片段(Backbone 和 Marionette):
<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>
然后在使用模板的View的onShow方法中:
types = ['Type 1', 'Type 2'];
this.$("#some_id").select2({
data: types
});
这是select2 v4.0。类型出现,但 minimumresultsforsearch 没有任何效果。我不确定如何调试,欢迎任何建议!
仅供参考,我尝试在 html 中进行一些配置的原因是,据我所知,我必须在 onShow 中使用相同的配置选项,然后在任何方法中再次使用该元素需要更新的地方,所以我重复了很多代码。如果我可以将它们放在 html 中,我想我只需要在 javascript.
中使用相关选项,即 'data:'您需要像这样设置 data-
属性:
data-minimum-results-for-search="25"
这将作为 .data( "minimumResultsForSearch" )
加载到 .data()
,并由 select2
提取。请查看 jQuery 的 parsing rules 以获得相同的信息。
$("#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>