2016-08-16 3 views
3

웹 페이지가 있고 그 페이지에 드롭 다운 목록이 있습니다. 각도 js에서 화살표 키를 사용하여 해당 드롭 다운 목록에서 선택한 항목의 값을 원합니다.angularjs의 화살표 키 이벤트 캡처

+0

['ngChange'] (https://docs.angularjs.org/api/ng/directive/ngChange) – str

+0

http://stackoverflow.com/questions/38971161/사용자가 선택한 후 드롭 다운 옵션에서 새 옵션을 선택한 후 값을 이전/38971525 # 38971525 스 니펫, 탭을 실행하여 select 요소를 포커스하고 화살표 키를 이동합니다. 값을 기록합니다. – gyc

+0

귀중한 도움에 감사드립니다. –

답변

0

보통 컨트롤러에 자동으로 바인드되므로 ng-model의 값으로 항목의 인덱스를 사용하는 것이 좋습니다. map() 기능이있는 컬렉션의 각 항목에 대한 속성으로 인덱스를 추가합니다.

$scope.selectOptions = myCollection.map(function(item, index){ 
    var obj = item; 
    item.idx = index; 
    return obj; 
}); 

그런 다음 내 select 요소

<select name="sel_item"       
    ng-model="selectedIdx" 
    ng-options="option.idx as option.label for option in selectOptions"> 
</select> 

에 나는 myCollection없는 거 변화 (불변) 확신 할 수에만이 방법을 사용합니다. 이제 컨트롤러에서 각 항목을 쉽게 액세스 할 수 있습니다. myCollection[selectedIdx]