我的Select2选项出现了新问题。我无法清除我的选择框。
和JSFiddle一样,我选择'对于我的数据。问题在于我无法移除最后一个元素,或清除我的Web门户中的整个字段,但在JSFiddle中,一切看起来都不错。我的门户网站给了我错误"类型错误:a为空"我不知道为什么。
这是我的代码:
$.getJSON(url, function (data){
$("#mySelect").select2({
data:data,
placeholder: "Select options",
templateSelection: function(val) {
return val.text;
}
});
});
我的选择:
<select id="mySelect"></select>
当我使用其他解决方案时问题消失但我无法调用&#39; templateSelection&#39;的相关数据。在这个解决方案中,我为我的选择创建了选项,并且简单地使用了select2,但正如您可以看到的那样,字段&#39; data.version&#39;我有答案&#34; undefined&#34;
代码:
var data=[
{id:1, text: "sample_1", version: "1"},
{id:2, text: "sample_2", version: "2"}];
$.each(data, function(i,x){
$('#mySelect').append($('<option>', {
value: x.id,
text: x.text
}));
});
$("#mySelect").select2({
templateResult: function(data) {
return data.text + ' ' + data.version;
}
});
为什么这个解决方案在jsfiddle中有效,但在我的门户网站中没有?
答案 0 :(得分:0)
var data=[{id:1, text: "sample_1", version: "1"},{id:2, text: "sample_2", version: "2"}]
$.each(data, function(i,x){
$('#mySelect').append($('<option>', {
value: x.id,
text: x.text+" "+x.version,
}));
});
$("#mySelect").select2({
templateResult: function(data) {
return data.text;
}
});
当$ function用于创建元素时,它只能接受该元素的html属性