我有select2控件设置与Ajax(有单和多)。我试图在页面加载有一些值,但我不能得到这个工作,但是。我的代码为select2如下:
function AjaxCombo(element,url,multival ){ // multival = true or false multival = multival || false; $(element).select2({ minimumInputLength: 2,multiple: multival,separator: '|',ajax: { url: url,dataType: 'json',data: function (term,page) { var targetname = $(this).attr('name'); var target = targetname.slice(targetname.indexOf("[")+1,targetname.indexOf("]")); return { targettype: "search",target: target,search: term }; },results: function (data,page) { return { results: data }; } } }); } AjaxCombo(".ajaxselect","includes/linkedcontrol.PHP",false); AjaxCombo(".ajaxmultiselect",true);
Ajax组合工作正常,我有麻烦只有初始值加载。我试过这个代码下面,但不能得到它的工作:
initSelection : function (element,callback) { var elementText = $(element).attr('data-initvalue'); callback(elementText); }
我的HTML从PHP返回如下:
<input name='header[country]' class='ajaxselect' data-initvalue='[{"id":"IN","name":"India"}]' data-placeholder='Select Country' value='' />
我看到的值是从PHP填充,只有我的jquery有问题。我的控件中的值显示为US |美国。我想我编辑了select2源获得这个格式为默认,不使用格式选项。
任何人都可以帮助我填充默认值?提前致谢。
编辑:该问题涉及Select2版本< 4.0。此选项从v4.0中删除,现在要简单得多。