이 될 수없는 최고의 sollution로 공급하지만 내 사이트에서 작동합니다. 이 스크립트는 사용자가 이전에 입력 한 주와 도시에 따라 거리 이름 자동 완성을 구현합니다. 이 특정 코드는 "keyup"이벤트를 수신합니다. 사용자가 둘 이상의 문자를 입력하면 스크립트는 .php 스크립트가 보낸 매개 변수를 분석하고 SQL 쿼리 및 응답을하는 ajax 요청을 시작합니다. 사용자가 충분히 운이 좋으면 거리 이름에 대한 제안을 찾으면 id = hintsTable을 사용하여 해당 div를 표시합니다. 자동 완성 옵션에서 입력 필드 값을 대체하고 드롭 다운 목록을 숨기는 각 자동 완성 옵션에 대해 이벤트 리스너 (클릭)를 만듭니다. 도움이되기를 바랍니다.
$("#street input").keyup(function(){ //street enter
var input = $('#street input').val(); //we get what user has already entered
var code = $('#mregionSelect').val(); //city id
if(input.length > 1)
{
$.ajax({
type : "POST",
url : "components/com_areas/ajaxhelper.php",
data : "input=" + encodeURIComponent(input) + "&code=" + code,
cache : false,
}).done(function(msg){
if(msg.length > 0)
{
$('#hintsTable').html(msg); //fill drop-down list with auto complete options
$('#hints').css('display', 'block'); //show the list
$('#hintsTable tr').click(function(){
var hint = this.cells[0].innerHTML;
$('#street input').val(hint);
$('#hints').css("display", "none");
})
}
else
{
$('#hintsTable').html('');
$('#hints').css('display', 'none');
//$('#findButton').css('display', 'none');
}
})
}
else
{
$('#hintsTable').html('');
$('#hints').css('display', 'none');
//$('#findButton').css('display', 'none');
}
})
나는 jQuery를위한 몇 가지 자동 완성 플러그인이 있다고 생각합니다. – Pointy
[jQuery UI autocomplete] (http://jqueryui.com/demos/autocomplete/)를 참조하십시오. –