我在angularjs中使用ui-select2,它使用jquery的select2插件。我有一些预定义的列表,然后当我开始搜索任何内容,如果在列表中找不到,我想添加一个新值。我正在做这样的事情:
var selectOptions = {
formatNoMatches: function(term) {
return "<a ng-click=\"addCountry('abc');\">Add new country</a>";
}
};
$scope.addCountry = function(countryName) {
console.log (' test');
};
但是点击不起作用,并且从不打印addCountry中的控制台。知道如何在角度js中为ui-select2添加新选项吗?
答案 0 :(得分:0)
我已经完成了这项工作,不是通过点击,而是允许用户在select2中输入他们喜欢的内容并点击输入:
<input type="text" ui-select2="selectOpts" ng-model="selected"/>
在coffeescript中,我希望你明白这个想法:
$scope.selectOpts =
maximumSelectionSize: 1
data: $scope.someListOfData
tags: true
multiple: false
createSearchChoice: (term) ->
{id: term, text: term}
我希望这会让你走上正轨,基本的事情就是设置“tags:true”
将Select2放入'tagging'模式,用户可以在其中添加新的选项和 通过此选项属性提供预先存在的标签 任
和createSearchChoice(在http://ivaynberg.github.io/select2/中搜索):
从用户的搜索词创建一个新的可选择的选项。允许创建通过查询功能不可用的选项。当用户可以动态创建选项时很有用,例如用于“标记”用例