2015-12-02 57 views
0


选定的选项我有新的问题,我选择二选项。我无法清除我的选择框。 在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> 

当我使用其他的解决办法,但我就不能调用相关数据“templateSelection”的问题就消失了。在这个解决方案,我创建了我的选择选项和简单的使用选择2,但正如你可以看到现场“data.version”我回答“不确定”

代码:

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

任何为什么这个解决方案在jsfiddle中工作,但不是在我的门户中的消声?

+0

的HTML属性您不必变量“a”在你的代码。也许你做错了? –

+0

是啊,但我得到这个错误在jQuery的2.1.3.min.js –

+0

你有select2.full.min.js的最新版本? –

回答

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; 
 
    } 
 
});

当$函数用于创建元素只能接受元素

+0

该解决方案“版本”添加到我的选择框,我想避免这种情况。 http://jsfiddle.net/13ozkvaa/8/这个例子显示我想要的。它完美地工作,但是当我把它添加到门户我得提及的话题一个错误,我不知道为什么 –

+0

与此代码中的jsfiddle我相关 –

+0

http://jsfiddle.net/13ozkvaa/9/后全JS或功能没有任何问题,但是当我这个解决方案复制到我的门,我得到“类型错误:一个是空”当我想清楚一个选择所有选择的选项 –