Angular UI-SELECT2未在编辑模式下设置值


<select id="e1" style="width:100%" ui-select2  tabindex="-1" ng-init="GetAllAgent()" ng-model="Agent" ng-options="ctr as ctr.AgentName for ctr in ListAgent track by ctr.AgentId" ng-change="GetSubAgentList(Agent.AgentId)">
<option value=""> </option></select>

当它处于编辑模式时,无法使用以下代码设置默认值

 angular.forEach($scope.ListAgent, function (value, index) {            
            if (value.AgentId == HR.AgentId) {
                $scope.Agent = $scope.ListAgent[index];
            }
        })
 $scope.ListAgent= [{ AgentId: "0", AgentName:"Ann" }, {  AgentId: "1", AgentName:"Muh" }];

HR.AgentId=1

首先, ui-select2不支持 ng-options:https://github.com/angular-ui/ui-select2/issues/252

此外,ui-select2ng-repeat不使用:https://github.com/angular-ui/ui-select2/issues/162

解决方案是使用input

 <input ui-select2="select2Options" ng-model="Agent"/>

其中 select2Options是:

$scope.select2Options = {
  data:$scope.ListAgent
}

列表应具有结构:[{id,text}],因此$scope.ListAgent将为

 $scope.ListAgent= [{ id:0, text:"Ann" }, { id:1, text:"Muh" }];

demo plunker


对于位置支架添加data-placeholder="----"

相关内容

  • 没有找到相关文章

最新更新