从昨天起,我一直在努力解决这个问题。我成功地以Json格式从服务器获取数据,但数据没有显示在输入框中。 我已经检查了类似的问题,我认为这是一种格式问题,如this guy's question,但我无法解决它。 我尝试了很多代码示例,这是最不复杂的代码示例。
HTML表单
<form action="" method="post">
<input type="text" placeholder="Name" id="customerAutocomp" class="ui-autocomplete-input" />
</form>
的Javascript
$(function() {
$("#customerAutocomp").autocomplete({
source: "suggest_name.php",
minLength: 2,
select: function(event, ui){
var url = ui.value.id;
if (url !== '#') {
location.href = '/somepage.php?somecode=' + url;
}
},
// optional
html: true,
// optional (if other layers overlap the autocomplete list)
open: function(event, ui) {
$(".ui-autocomplete").css("z-index", 1000);
}
});
});
我正在使用的JQuery版本
<script src="//code.jquery.com/jquery-2.2.4.js"> </script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
PHP
//connnections strings//
$conn = mysql_connect($host, $username, $password, $db_name) or die("Could not connect: " . mysql_error());
mysql_select_db("stackoverflow");
$term = trim(strip_tags($_GET['term']));
$qstring = "SELECT fullname as value,id FROM users WHERE fullname LIKE '%".$term."%'";
$result = mysql_query($qstring);
while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
$row['value']=htmlentities(stripslashes($row['value']));
$row['id']=(int)$row['id'];
$row_set[] = $row;
}
echo json_encode($row_set);
答案 0 :(得分:0)
请删除JSON响应中返回的脚本文件。
希望它有所帮助!