2009-10-21 8 views
0

마지막 입력이 아닌 경우 양식을 제출하지 못하도록 양식에서 keypress에 대한 입력을 포착합니다. 그렇지 않으면 탭으로 작동합니다 (다음 입력을 찾아서 그것에 집중합니다).자동 완성이 표시 될 때 감지하기

브라우저의 자동 완성을 선택하는 경우 이 아닌 트리거 event.preventDefault()에 대한 아이디어가 있으십니까?

+0

나는 파이어 폭스에서 이것을 시도해 본 결과 자동 완성 기능이 방화 광명으로도 감지 할 수 없다는 것을 알았다. 즉, 검사 할 수 없다는 것이다. 나는 자바 스크립트에서 그것을 감지 할 확률을 줄이는 것 같다. –

+0

어쨌든, 이것 좀 봐. http://stackoverflow.com/questions/1567610/browser-textbox-autocomplete-event-when-does-this-happen –

답변

0
당신이 사용하는 경우 나도 몰라

특정 플러그인이나 쉽게 자동 완성 소스 코드를 수정할 수있는 능력을 가지고,하지만 난 이런 식으로 뭔가를 시도 할 경우 :

  • 찾기 (하지 않는 허위 표시에 대한 사실,) 자동 완성의 가시성이 트리거 될 때 부울 값을 설정 자동 완성
  • 의 표시를 트리거하는 데 사용되는 기능
  • 는 당신이 시도 할 때마다 부울 값의 상태를 확인 캐치 엔터 (또는 탭)

자동 완성 개체의 컨텍스트에서 부울 값에 공개적으로 액세스 할 수 있도록 설정해야합니다.

다시 구현이 그것을 변경하는 방법을 가장 좋은 말을하기는 어렵습니다하지만 이 같은 작업 뭔가 할 수 있다면 구체적인 내용을 모르고 :

var Autocomplete = { 
    bIsVisible: false, 
    display: function() { 
    // toggle visibility of the autocomplete 
    this.bIsVisible = !this.bIsVisible; 
    } 
} 

당신은 다음과 같은 일을하여 활용할 수있는 것 :

alert(Autocomplete.bIsVisible); // returns false 
Autocomplete.display(); // triggers the display of the autocomplete 
alert(Autocomplete.bIsVisible); // returns true 
+0

나 자동 완성을위한 플러그인을 사용하지 않고 브라우저 자동 완성 기능을 사용하고 있습니다. 그렇지 않으면 작동합니다. – SethZanderJensen

관련 문제