分类 AngularJS 下的文章

原主题版
angularedittable
html

 
{{ showGroup(user) }}

js

$scope.users = [
      {id: 1, name: 'awesome user1', status: 2, group: 4, groupName: 'admin'},
      {id: 2, name: 'awesome user2', status: undefined, group: 3, groupName: 'vip'},
      {id: 3, name: 'awesome user3', status: 2, group: null}
    ];

    $scope.groups = [];
    $scope.loadGroups = function() {
      return $scope.groups.length ? null : $http.get('api/groups').success(function(data) {//获取后台数据
        $scope.groups = data;
      });
    };

    $scope.showGroup = function(user) {/
      if(user.group && $scope.groups.length) {
        var selected = $filter('filter')($scope.groups, {id: user.group});//将值赋值给id,然后编辑下拉框时 显示 selected[0].text的值
        return selected.length ? selected[0].text : 'Not set';
      } else {
        return user.groupName || 'Not set';
      }
    };

json

[
  {"id": 1, "text": "user"},
  {"id": 2, "text": "member"},
  {"id": 3, "text": "vip"},
  {"id": 4, "text": "admin"}
]

所用项目修改版
angularedit
html

					
{{ showcompanyGroup(item) }}

js

 $scope.companygroups = []
	 $scope.loadcompanyGroups = function() {
	      return $scope.companygroups.length ? null : $http.get('/jsjxyxt/unit/get.do').success(function(data) {
	        $scope.companygroups = data.result;
	        
	      });
	 };
	    
	    
	    $scope.showcompanyGroup = function(item) {	
	        if(item.unit.uname && $scope.companygroups.length) {
	          var selected = $filter('filter')($scope.companygroups, {uname: item.unit.uname})
	          return selected.length ? selected[0].uname : ' ';
	        }else{
	        	return item.unit.uname || ' ';
	        } 
	     };

然后今晚遇上了坑,点击编辑的时候下拉框的默认值为空,找了好久没有发现原因,最后才发现,从后台传来的json中没有编辑前的那个值,所以下拉框默认为空