2014-07-13 4 views
2

에 대한 겨 반복 내가 가진 무엇 :AngularJS와 : 일반 텍스트

<input value="1,2"/> 

내가 약 ng-repeat 배울 수 있지만, html 태그에서만 사용할 수 있습니다

app.controller('items', function($scope){ 
    $scope.items = [ 
     {'id':1, 'name':'randomOne'}, 
     {'id':2, 'name':'whatEverName'} 
    ]; 
}); 

내가 원하는 것은. AngularJS를 사용하여이를 달성 할 수있는 방법이 있습니까?

감사합니다.

+0

'NG-repeat' 당신이 다음''에 부착하고 그 지시가를 생성 할 수있는 자신을 만드는 것, 그래서 단지 지시 정말 'items'를 기반으로하는 요소의 value 속성 템플릿이 여전히 깨끗하고 모든 컨트롤러가 문자열을 가져 오기 위해 추가 작업이 필요하지는 않습니다. – GillesC

+0

최종 목적은 무엇입니까? 연결된 값이 필요한 이유는 무엇입니까? –

+0

@Bonatoc 전체 양식으로 보내려면 – Deptroco

답변

1

사용 필터 :

.filter('getIds', function() { 
    return function (items) { 
    return items && items.map(function (item) { 
     return item.id; 
    }).join(','); 
    } 
}) 

에서를

$scope.value = _.pluck(items, 'id').join(','); 

<input value="value"> 
1

에 대해 어떻게 :

$scope.ids = []; 
angular.forEach($scope.items, function(values,keys){ 
    $scope.ids.push(values.id); 
}); 
$scope.ids = $scope.ids.join(); 

fiddle

+0

매우 멋져 보이지만 자바 스크립트는 충돌합니다. ( – Deptroco

+0

underscore.js없이 뽑을 방법이 있습니까? – Deptroco

+0

잘 모르겠습니다. 밑줄/로다시는 매우 유용합니다. 난 항상 내 애플 리케이션에 그것을 포함합니다. – chovy