通过用户界面,选择2创建的列表无法选择项目(Can't select item in lis

2019-08-18 01:22发布

在我的HTML我有这样一行:

<input  ng-change="privChanged()" ng-model="selectedPriv" ui-select2="privsSelect2options"></input>

privsSelect2options功能:

$scope.privsSelect2options = {
    placeholder: "Wybierz privo",
    allowClear:true,
    minimumInputLength: function(){return  3;},
    formatInputTooShort: function (input, min) {return "Wprowadź conajmniej " + min + " znaki.";},
    formatSearching: function () { return "Wyszukiwanie..."; },
    formatNoMatches: function () { return "Nie znaleziono pasujących województw."; },
    query: function (query) {
       query.callback( {results: $filter('filter')($scope.privs,{name: query.term}) } );
    },
    formatResult: function(priv){
        return priv.name;
    },
    formatSelection: function(priv){
        return priv.name;
    }
}; 

当我把3个字母它过滤结果,并显示它正确的,但我无法点击,然后从结果列表中的任何项目,一切工作正常。 谁能帮我在这件事情? 它甚至没有进入的formatSelection功能。

Answer 1:

问题是, Priv类/表没有id属性,它的主键字段代码。 我不得不添加的功能:

id : function(priv) {
        return priv.code;
     },

$scope.privNameSelect2options



Answer 2:

请参考选择2 Ajax的方法是不选择 ,

并采取正确的值:

id: function(data){return {id: data.id};},

要么

id: function(data){return data.id}


Answer 3:

虽然这不是真正的选择2文件中规定,你需要传递一个ID密钥与函数值来选择2。

$scope.privsSelect2options = {
    id: function(element) { return element.name; }
    ...
}; 


文章来源: Can't select item in list created by ui-select2