我正在使用Choosen jquery插件,我想在multiselect中限制所选的选项。有一个建议的解决方案$(".chosen-select").chosen({max_selected_options: 5});
但它对我不起作用!!
这是我的js文件:
$(document).ready(function(){
// .....
$(".chosen-select").chosen({max_selected_options: 5});
//.....
});
这是php文件:
<em>Country</em>
<select data-placeholder="Choose your country..." id="mycountry" class="chosen-select" multiple style="width:400px;" tabindex="4">
<option value=""></option>
<?php
// Data from dataabse
?>
</select>
答案 0 :(得分:5)
此代码适用于我 -
$(".demo-chosen-select").chosen({
max_selected_options:3, //Max select limit
display_selected_options:true,
placeholder_text_multiple:"Select some options",
no_results_text:"Results not found",
enable_split_word_search:true,
search_contains:false,
display_disabled_options:true,
single_backstroke_delete:false,
width:"200px",
inherit_select_classes:true
});
多数民众赞成......
答案 1 :(得分:1)
安装Chosen时,您必须在网页中添加以下行:
<script type="text/javascript">
var config = {
'.chosen-select' : {},
'.chosen-select-deselect' : {allow_single_deselect:true},
'.chosen-select-no-single' : {disable_search_threshold:10},
'.chosen-select-no-results': {no_results_text:'Oops, nothing found!'},
'.chosen-select-width' : {width:"95%"}
}
for (var selector in config) {
$(selector).chosen(config[selector]);
}
您必须使用这些行配置您选择的插件。例如,如果要限制多项选择中的五个项目中的选定选项。可以使用以下新行'.chosen-select' : {},
'.chosen-select' : {max_selected_options: 5},
这都是
答案 2 :(得分:0)
以上解决方案需要在初始化时传递选项。因此,您需要设置全局限制,或单独初始化页面上的每个不同的有限选择。
我将以下if块添加到selected.jquery.min.js中的组件(对于选择的v1.3.0)
Chosen.prototype.on_ready = function () {
if(this.form_field.getAttribute('data-limit')){
this.max_selected_options = this.form_field.getAttribute('data-limit');
}
return this.form_field_jq.trigger("chosen:ready", {chosen: this})
&#13;
这将从select和replace中读取data-limit属性,或在初始化时创建max_selected_option。