2012-03-07 2 views
0

jquery & 자동 완성으로 배우려고합니다. 누군가가 뭔가를 입력하고 ENTER를 누르는 것을 제외하고는 다음과 같은 방식으로 작동합니다. 그런 다음 텍스트 상자가 비어있게됩니다. 어떻게 이것을 억제합니까? 기존 이벤트 중 하나를 실행하거나 선택하거나 변경하려고합니다. 감사합니다,자동 완성에서 ENTER 버튼을 잡거나 누르지 못합니다.

<!doctype html> 
<html> 
    <head> 
    <meta charset="utf-8"> 
    <title>Demo</title> 
    <style> 
     a.test { font-weight: bold; } 
    </style> 
    </head> 
    <body> 
    <link rel="stylesheet" type="text/css" href="css/ui-lightness/jquery-ui-1.8.18.custom.css"> 
    <link rel="stylesheet" type="text/css" href="css/autocomplete.css"> 
    <script type="text/javascript" src="js/jquery-1.7.1.min.js"></script> 
    <script type="text/javascript" src="js/jquery-ui-1.8.18.custom.min.js"></script> 
    <script> 
     $(document).ready(function(){ 

      //attach autocomplete 
      $("#suggest4").autocomplete({ 

        //define callback to format results 
        source: function(req, add){ 

          //pass request to server 
          $.getJSON("friends.php?callback=?", req, function(data) { 

            //create array for response objects 
            var suggestions = []; 

            //process response 
            $.each(data, function(i, val){ 
            suggestions.push(val.name); 
          }); 

          //pass array to callback 
          add(suggestions); 
        }); 
      }, 

      //define select handler 
      select: function(e, ui) { 
       $("#spill").html("change "+ui.item.value+" "+e.type); 
      }, 

      //define select handler 

      change: function(e) { 
       $("#spill").html("change "+$(this).val()+e.type); 
      } 

      }); 
     }); 
    </script> 
    <div id="content"> 
     <form> 
     <p> 
      <label>Multiple Birds (local):</label> 
      <input type="text" id="suggest4"></input> 
     </p> 
     </form> 
    </div> 
    <div id="spill"> 
    </div> 
    </body> 
</html> 

답변

0

당신은 입력 키 누르기 이벤트에 바인딩 입력을 찾아 다음 원하는 일을해야합니다

$('#suggest4').keypress(function(e) { 
    //catch only enter 
    if(e.keyCode == 13) { 
     e.preventDefault(); 
     //put your stuff in here 
    } 
    }); 
관련 문제