Select2加载我的列表中的所有项目成功,尝试在页面加载时选择特定值时发现的问题。例:
:: put select2在一个特定的html元素,没有值被选择,即使所有的项目都加载。
$('#my_id').select2();
::当页面加载时,我试图显示一个特定的项目被选择,但不能按预期工作,因为即使被选择,select2不显示它。
$('#my_id').val('3'); //select the right option,but doesn't render it on page loads.
如何使选定的选项在加载网页时弹出?
提前致谢。
更新
::如何加载所有select2项目(对不起,它的玉,而不是纯HTML):
label(for='category') Category span.required * select(id='category',style='width:230px',name='category') option(value='') - Select - each cat in categories option(value='#{cat.id}') #{cat.description}
P.S .:我的列表中的所有项目都加载。
::如何初始化select2:
只是把以下行代码在我的javascript和它成功:
$('#category').select2();
::我如何选择一个特定的值:
>首次尝试:
$('#category').select2( { initSelection: function(element,callback) { callback($('#field-category').val()); } } );
>第二次尝试:
$('#category').val($('#field-category').val());
P.S .:#field-category有一个值,它的一个隐藏的输入字段,工作正常。
多谢你们!
解决方法
您需要使用
initSelection选项来设置初始值。
如果您使用预定义的select元素来创建select2,则可以使用以下方法
$('select').select2().select2('val','3')
演示:Fiddle