2014-10-09 2 views
0

ajax 문서를 호출 할 때 트리거 지연을 제거하는 방법은 무엇입니까?

질문은 간단합니다.

사용자가 <input type="text"> 값을 변경했을 때 ajax를 통해 일부 문서를 호출하려고합니다.

'키보드 입력'이벤트조차도 아닙니다.

는 당신이 알고 ... 그 방법을 포함, 사용자의 마지막 입력 결과를 보여주는 도구 팁 ... ...

내 말은, 그 도구 팁 ... 위치는 입력 상자 아래에 .. 사용자의 최근 입력 결과를 보여 주며 ... 설명하기가 어렵습니다. 그 이름을 모르겠다 ...

어쨌든, 나는 사용자가 <input type="text">의 값을 변경 한 직후 아약스 문서를 호출하고 싶다 ... 키보드 입력뿐만 아니라, 마우스 클릭으로 해당 툴팁 중 하나를 선택하여 포함 ...

sensitiveInput.addEventListener('keyup',function(){ 
    callDocument_viaAjax(); 
} 

그래서 나는 위의 코드와 유사한 방법을 시도 :

글쎄, 나는

코드입니다 .. 바로 '키 입력 이벤트'후 문서를 호출 할 수 있었다.

코드입니다 :

document.addEventListener('mouseup',function(){ 
    if(sensitiveInput.value !== '') { 
     sensitiveInput.onchange=function(){ 
      callDocument_viaAjax(); 
     } 
    } 
}); 

하지만이 코드는 .. 그 말을 약간의 지연이 있었다 내가 만들고 싶어 UI를 실현하는 데 실패했습니다.

입력 상자 아래의 툴팁 중 하나를 선택하여 <input type="text" id="sensitiveInput"> 값을 변경하면 callDocument_viaAjax()가 실행되지 않았습니다.

나는 문서에 callDocument_viaAjax()을 실행하기 위해 한 번 더 ....

내가 왜 이런 일을 모르는를 클릭했다.

어떤 사람이 나에게 자비를 보여주십시오

그리고이 문제를 해결하는 방법을 모른다 ... ...

+0

참조하는 '툴팁'의 이름이 '자동 완성'일 수 있습니다. 또한'keyup' 이벤트 외에도'change' 이벤트에 응답하려고합니다. – enhzflep

답변

0

나는 이벤트 트리거 '입력'을 사용하여이 문제를 해결했다. 'input'이벤트는 입력 필드에서 포커스를 잃지 않더라도 입력 변경을 감지합니다. (입력 필드의 초점이 맞지 않는 경우에만 '변경'효과가 적용됨)

관련 문제