2013-09-29 3 views
1

자동 완성시 이름 및 ID 목록을 가져 오려고합니다. 나는 텍스트 박스에서 keypress 이벤트를하고 아약스 게시물의 funstion을 호출하고 선택 목록을 얻을 수 있습니다. 나는 이드와 이름을 얻으려고 노력하고있다. 텍스트 상자에 이름을 바인드 한 경우 사용자가 볼 수 없도록 ID를 유지해야하는 부분이 있지만 데이터를 저장할 때 사용할 수 있습니다. 숨겨진 필드를 사용할 수 있지만 자동 완성의 Select 이벤트가 작동하지 않는 경우 해당 ID를 숨겨진 필드 ID에 할당하는 방법 또한 다른 요소가 목록에서 선택되면 숨겨진 필드 값을 변경해야합니다. 도와주세요. 고맙습니다.자동 완성 jquery, 선택 이벤트가 작동하지 않습니다.

function SearchClients() { 

     } 

     $(document).ready(function() { 
      $("#txt_Autocomplete").autocomplete({ 
       source: function (request, response) { 
        $.ajax({ 
         type: "POST", 
         contentType: "application/json; charset=utf-8", 
         url: "../PsychiatricEvaluation/SearchClients", 
         data: "{'searchtext':'" + document.getElementById('txt_Autocomplete').value + "'}", 
         dataType: "json", 
         success: function (data) { 
          response($.map(data.Data, function (item) { 
           return { 
            label: item.Name, 
            value: item.id 
           } 
          })); 
         }, 
         select: function (event, ui) { 
          alert("hi"); 
          //$("#txt_Autocomplete").val(ui.item.value); 
          $("#hdnPkClientId").val(ui.item.id); 
         }, 
         change: function (e, ui) { 
          alert("changed!"); 
         }, 
         error: function (result) { 
          alert('Error'); 
         } 
        }); 
       } 
      }); 
     }); 
+1

아마도 그것은 CSS 문제입니다, 당신은 UI를 jQuery 자동 완성 CSS 파일 참조를해야합니까? –

+0

예 선생님과 나는 콘솔에서 200 OK를 볼 수 있습니다. – Sandy

+1

'searchtext'를 'term'으로 바꾸어보십시오. –

답변

1

$(document).ready 이벤트의 내부에 jQuery를의 만남을 넣어 :

$(document).ready(function() { 
    $("#txt_Autocomplete").autocomplete({ ... 
}); 
+0

선생님, 위 코드를 편집했습니다. 어떻게 아이디어를 사용했는지 확인해주세요. 그래도 작동하지 않습니다. 경고가 발동하지 않습니다. – Sandy

+1

@Sandy, 다른 방법으로 제거하십시오. 한 번만 연결하면됩니다. 그냥'$ (document) .ready' 함수를'.js' 파일에 넣으십시오. –

+0

@Sandy, 미안하지만 당신이 말하는 것을 따라 가지 않습니다. 작동하지 않는다고했는데 그렇지 않으면 작동합니까? 잠시 시간을내어 해당 코멘트를 삭제하고 조금 더 명확히하십시오. –

관련 문제