jQuery和PHP搜索建议脚本

时间:2011-05-04 19:09:13

标签: php jquery html css

我有一个PHP和jQuery脚本,可以从文本框中创建搜索结果建议。但是,当您在文本框中键入内容时,将其删除并尝试进行其他查询,不会显示任何建议。为什么会这样?

以下是我的网页代码的副本:

<script type="text/JavaScript">
function lookup(inputString){
if (inputString.length==0){
$('#suggestions').hide();
} else{
$.post("suggestions.php",{
queryString: "" + inputString + ""},
function(data){
$('#suggestions').html(data);
});
}
}
</script>

<form>
<input type="text" size="30"  onkeyup="lookup(this.value);">
<div id="suggestions"></div>
</form>

这是我的PHP代码的副本:

<p id="searchresults"><?php

$db=new mysqli('localhost','username','password','database');

if(isset($_POST['queryString'])){
$queryString=$db->real_escape_string($_POST['queryString']);
            if(strlen($queryString)>0){
                $query = $db->query("SELECT * FROM search s WHERE name LIKE '%" . $queryString . "%'");
                if($query){
                    while ($result = $query ->fetch_object()){
                        echo '<a href="'.$result->name.'">';                        
                        $name=$result->name;            
                        echo ''.$name.'';
                    }
                }
            }
        }
?></p>

提前致谢,Callum

2 个答案:

答案 0 :(得分:4)

你隐藏但不再显示。

将您的回调功能更改为:

function(data){
    $('#suggestions').html(data).show();
}

fadeIn()增加可爱度;)

答案 1 :(得分:1)

$('#suggestions').show()声明中添加else