View Full Version : Ajax: Từ gợi ý.
Một số trang web tìm kiếm khi ta đang gõ từ khóa nó sổ 1 list từ khóa gần đúng cho ta lựa chọn.
Bác nào có đoạn code cho mình xin cái.
Theo mình đoán, thì cứ mỗi lần search 1 từ khóa, thì nó sẽ lưu vào csdl với số kết quả tìm được kèm theo. Khi ta search với 1 từ khóa nào đó, ta send ajax rồi nhận được 1 từ khóa hoàn chỉnh đã từ search và có các từ mở đầu giống như các từ ta vừa gõ vào kèm theo số kết quả tìm được :D (mp3.zing.vn cũng tương tự)
http://cristian.nexcess.net/ajax/suggest/
Ơ Rê Ca.
tham khảo cái này xem đúng với ý bạn không
<script>
function getSong()
{
key=document.getElementById("title").value;
//alert(key.length);
if (key.length<3 || key.indexOf(" ")!=-1)
{
if (key.length==0)
document.getElementById("result").innerHTML="Bạn hãy nhập từ khóa để tìm kiếm bài hát";
else
document.getElementById("result").innerHTML="Bạn phải nhập ít nhất 3 chữ cái";
return false;
}
if (key.charAt(key.length-1)==" " || key.charAt(0)==" ")
return false;
if (window.ActiveXOject)
http=new ActiveXOject("Microsoft.XMLHTTP");
else
http=new XMLHttpRequest();
http.onreadystatechange=function()
{
if (http.readyState==4)
if (http.status==200)
{
s=http.responseText; /****** Biến s chưa qua xử lý ******/
if (s.length>70)
document.getElementById("result").innerHTML=s;
}
}
http.open("GET","search.php?q="+key,true);
http.send(null);
}
</script>
<form name=find>
<input type=text id="title" style="width: 200" onchange="getSong();" onkeyup="key=encodeURI(this.value); getSong();">
</form>
<div id="result"> du lieu tra ve </div>
khuongcong
08-05-2008, 16:05
Ở cuốn ebook AJAX and PHP Building Responsive Web Applications, Chapter 6: AJAX Suggest and Autocomplete có nói rất rõ về vấn đề này, bạn tìm hiểu nhé!
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.