2011-08-22 4 views
1

jQuery 자동 완성 컨트롤이 있습니다. 선택시 값은 레이블에 저장됩니다. 그런 다음 사용자가 자동 ​​완성으로 돌아가서 선택 항목을 변경하면 레이블에서 값을 지우고 새 선택이 이루어진 경우에만 값을 채우고 싶습니다. 변경 이벤트를 사용하여 시도했지만 선택이 이루어질 때마다 발생합니다.jQuery UI 1.8 자동 완성 - 변경 선택을 감지하는 방법

답변

1

.select-event를 사용해 보셨습니까? 데모 페이지에서

, http://jqueryui.com/demos/autocomplete/#event-select : 당신이 실제로 변경 이벤트는 달리 뭔가를 선택하면

$(".selector").autocomplete({ 
    select: function(event, ui) { ... } 
}); 

이 트리거해야합니다.

+0

괜찮지 만, 다음 사용자가 내가 물건을 변경 시작 사용자를 찾을 어떻게 자동 완성 상자에 입력하여 자신의 선택을 변경 돌아갑니다 및 시작하는 경우와 난을 중지해야 아래의 UI 버튼을 클릭하십시오. – chugh97

+1

blur()에 값을 저장하고 저장하려고 시도한 적이 있습니까? 그리고 keypress()에서 두 값을 비교하고! = then label.disable()을 사용하여 죄송합니다. codenglish에서 이야기하는 중 ... – Tumharyyaaden

0

자동 완성 기능이 자동으로 선택 초점을 맞추기 때문에 초점 필드를 지우고 선택을 흐리게합니다. 선택

$("#searchInput").focus(function(){ 
    $(this).val(""); 
}); 

$("#searchInput").autocomplete({ 
    source: source, 
    minLength: 2, 
    select: function(event, ui) { 
     $("#searchInput").blur(); 

    } 
}); 

js fiddle demo