我試着當用戶鍵入(自動完成)來實現類似的搜索將返回結果的Facebook去了,這裏是我使用jQuery代碼:Facebook的如AJAX搜索 - 如何通過結果使用鍵盤
$(document).ready(function(){
$("#searchField").keyup(function()
{
var searchbox = $(this).val();
if(searchbox=='')
{
$("#searchDisplay").html('').hide();
}
else
{
$.ajax({
url: "ajax/?do=search_users&q="+ searchbox+"",
//data: dataString,
cache: false,
success: function(html)
{
$("#searchDisplay").html(html).show();
}
});
}return false;
});
});
$("#searchField").focusout(function(){
$("#searchDisplay").slideUp();
});
$("#searchField").focus(function(){
if($("#searchDisplay").html() != ''){
$("#searchDisplay").slideDown();
}
});
返回結果以div結構。 我不知道該如何做的是讓用戶使用鍵盤上的[UP]和[DOWN]鍵並通過按[ENTER]按鈕選擇結果。
EXTRA INFO
這裏是display_box
:
<div id="searchDisplay">
echo '<a href="'.$_config['http'].$username.'"><div class="display_box" align="left">';
echo '<img src="'.$img.'" style="width:25px; float:left; margin-right:6px" />';
echo $name.'<br/>';
echo '<span style="font-size:9px; color:#999999">'.$username.'</span></div></a>';
</div>
HTML標記
<a href="ahoora"><div class="display_box" align="left">
<img src="http://domain.com/upload/thumbs/ahoora_1336145552.jpg" style="width:25px; float:left; margin-right:6px">
<strong>a</strong>hour<strong>a</strong><br>
<span style="font-size:9px; color:#999999"><strong>a</strong>hoor<strong>a</strong></span>
</div></a>
每個結果具有上述HTML代碼,並且它們都被加載到<div>
與id=searchDisplay
。請注意,PHP回聲部分有一個while循環,上面的代碼只是html如何的想法(searchDisplay與結果不在同一頁,請檢查jQuery代碼)。
能否請您顯示'#searchDisplay'的HTML? – Jivings
我將它添加到主要問題 –
嘿,你正在顯示的PHP代碼,但它有點令人困惑,不是我不能讀取PHP,但它臃腫與許多變量未顯示在這裏。那麼,你能否展示一個生成標記的例子 - 沒有php?這有助於解決這個問題。 –