내 응용 프로그램에는이 동작과 함께 폼이 있습니다. 폼 필드 값이 입력이 포커스를 잃거나 사용자가 Enter 키를 누른 후 점진적으로 서버에 업로드됩니다. 초점이 맞지 않으면 (사용자 정의 지시문) 및 키 누름 (ng-keydown
) 이벤트에 연결하여 수행됩니다. 동시에 나는 City Lookup (그리고 몇몇 다른 필드들도)을 위해 Angular-ui Bootstrap Typeahead 컨트롤을 사용하고있다. 선행 입력 잘 작동하지 않고각도 -Ui 부트 스트랩 선행 컨트롤 및 ng-keydown
<input type="text" name="city"
ng-model="dispatcher.city"
ng-keydown="dispatcher.inputKeyPress($event)"
typeahead="obj.city as obj.city for obj in lookup('city', $viewValue)">
의 입력을하지만 도시 입력에 올 때,이 같은 작품 : 입력은 다음과 같이
- 사용자 시작 도시를 입력, 예를 들어, 론
- 제안을 선행 입력 표시 팝업
- 사용자가 런던을 선택하고 프레스
- 선행 입력을 입력은 런던 입력을 채 웁니다하지만 전송 값입니다 값이 론 A를 변경 한 입력 직후 서버.
나는 keypress 이벤트로 인해 두 가지 작업이 발생한다고 가정합니다. 유형 지정 프로세스가 그 방법을 처리하고 동시에 ng-keydown
이 그 방식을 해석합니다. 두 가지 중 하나는 미리보기를 사용하여 이벤트를 "소비"해야하며 "계속 진행"하지 말아야하거나 ng-keydown
콜백은 추천 이벤트가 표시되는지 (즉 특정 이벤트를 건너 뛸 수 있도록) 알려야합니다.
나는 typeahead-on-select="onSelect($item, $model, $label)"
으로 경기를했지만 어떻게 든 두 콜백 (inputKeyPress
및 onSelect
)을 동기화 할 수 없었습니다. 키 누름이 더 빨리 실행되는 것 같습니다.
어떤 방법을 제안합니까? 아니면 완전히 다른 건가요? 이것을 선행 입력 게다가
감사
멋진 컨트롤입니다.
사용자가 앞 글자에없는 값을 입력 할 수있는 기능을 찾고 있습니까? – Trenton
그 능력은 이미 있습니다, 사용자는 선입견 제안에서 선택하거나 새로운 제안을 입력 할 수 있습니다. - 잘 작동합니다. 다른 콜백 (키 누름)과 동기화 할 수 없습니다. – RastoStric
모델의 실제 값에 선행 값을 바인딩하고 있습니까? (모델명)? 그게 문제 일 수 있습니다. 그렇지 않으면 어쩌면이 양식 필드 만 잃어버린 초점을 비활성화 할 수 있습니까? 나는 그것을 추적 할 수 있도록 키 누르기와 keydown을 묶었지만 필요한 것은 나타나지 않습니다. – Trenton