0

jquery 自动完成让我头疼。输入 textbox 后,自动完成代码不返回数据。我似乎可以在代码中找到问题所在。

  $().ready(function() {
$("#msg_to").autocomplete({
    source:"new_temp.php",
    width: 260,
    matchContains: true,
    selectFirst: false
});
});

我的PHP代码是:

 require('mysql_connect.php');
 $word     = $_REQUEST['term'];
 $s_query  = "
SELECT user_id , full_names , userName FROM elib_users 
WHERE full_names LIKE '%".$word."%' || userName LIKE '%".$word."%' limit 1";
$sql      = mysql_query($s_query) or die(mysql_error());
$count    = mysql_num_rows($sql);
if($count > 0){
while($row = mysql_fetch_array($sql)){
$to_name   = $row['full_names'];
$to_id     = $row['user_id'];
$to_usName = $row['userName'];

 $data[] = array('label' => $to_name   = $row['full_names']);

}
}
echo json_encode($data);

html文本输入

<input type="text" name="msg_to" class="btn" id="msg_to"  />
4

1 回答 1

0

使用 Firebug 调试您的错误 ( http://getfirebug.com/ )

这对我有用

header('content-type: application/json; charset=utf-8');<br>
$arr = array(
        array('id' => 3453, 'label' => 'Producto1', 'value' => 'Producto1'),
        array('id' => 3454, 'label' => 'Producto2', 'value' => 'Producto2'),
        array('id' => 3455, 'label' => 'Producto3', 'value' => 'Producto3')
       );

echo json_encode($arr);

<?php header('content-type: application/json; charset=utf-8');

$arr = array();
$con = mysql_connect("localhost","root","root");
if (!$con) {
    die('Todo mal.....: ' . mysql_error());
}

mysql_select_db("test", $con);

$result = mysql_query("SELECT id, nombre FROM productos where nombre like '%".$_GET["term"]."%'");

while($row = mysql_fetch_array($result))
{
  array_push($arr, array('id' => $row['id'], 'label' => $row['nombre'], 'value' => $row['nombre']));
}

mysql_close($con);
echo json_encode($arr);
?>
于 2013-06-06T19:32:26.583 回答