这属于select2版本4之前的代码
我有一个简单的代码,select2从ajax获取数据
select2
$("#programid").select2({ placeholder: "Select a Program", allowClear: true, minimumInputLength: 3, ajax: { url: "ajax.php", dataType: 'json', quietMillis: 200, data: function (term, page) { return { term: term, //search term flag: 'selectprogram', page: page // page number }; }, results: function (data) { return {results: data}; } }, dropdownCssClass: "bigdrop", escapeMarkup: function (m) { return m; } });
该代码有效,但是,我需要像在编辑模式下一样在其上设置一个值。当用户第一次选择一个值时,它将被保存,当他需要编辑该值时,它必须出现在同一选择菜单(select2)中以选择先前选择的值,但我找不到方法。
更新:
HTML代码:
<input type="hidden" name="programid" id="programid" class="width-500 validate[required]">
Select2编程访问不适用于此功能。
要动态设置Select2组件的“选定”值:
$('#inputID').select2('data', {id: 100, a_key: 'Lorem Ipsum'});
其中第二个参数是具有期望值的对象。
确实可以,只是要注意在新的select2中,标准select2对象中的 “ a_key” 是 “文本” 。所以:{id: 100, text: 'Lorem Ipsum'}
{id: 100, text: 'Lorem Ipsum'}
例:
$('#all_contacts').select2('data', {id: '123', text: 'res_data.primary_email'});
感谢@NoobishPro