AJAX搜索框显示文本框上的部分源代码

时间:2015-01-04 04:55:32

标签: javascript php mysql ajax

我正在为手机比较网站开发实时搜索系统。我将手机存储在MySQL的表格中,并带有一个名为“completename”和“id”的变量。 “completename”变量用于显示结果的完整名称,id用于创建指向特定手机的链接。

代码有效,我键入一个名称,它在表格中显示类似的结果。如果我输入Sony,它将显示最多5部手机,其名称中包含Sony一词。

我想要做的是将这些结果转换为链接,以便点击它们并将用户发送到相应的电话信息查看器。

以下是搜索框的代码:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<script src="typeahead.min.js"></script>
<script>
$(document).ready(function(){
$('input.typeahead').typeahead({
    name: 'typeahead',
    remote:'search.php?key=%QUERY',
    limit : 10
});
});
</script>
<div class="panel panel-default">
<div class="bs-example">
    <input type="text" name="typeahead" class="typeahead tt-query" autocomplete="off" spellcheck="false" placeholder="Type your Query">
</div>

这里是search.php:

<?php
$key=$_GET['key'];
$array = array();
$con=mysql_connect("localhost","user","pass");
$db=mysql_select_db("database",$con);
$query=mysql_query("SELECT * FROM phones where completename LIKE '%{$key}%'");
while($row=mysql_fetch_assoc($query))
{
  $array[] = '<a href="viewer.php?id=' . $row['id'] . '">' . $row['completename'] . '</a>';
}
echo json_encode($array);
?>

我的问题是,当我点击结果,这是一个链接并且工作了一会儿,当浏览器发送请求时,在搜索文本框中我可以看到$ array中的源代码变量(

那么,我该如何防止这种情况呢?

非常感谢!

0 个答案:

没有答案