2010-11-20 17 views
7

Mis PHP de datos de retorno código JSON para autocompletar jQuery pero autocompletar no trabajarjQuery autocompletado no se trabaja con datos JSON

Jquery autocompletar

$("input#txtaddkey").autocomplete({ 
      source: "keyword.php", 
       minLength: 2 
     }); 

código PHP

$fetch = mysql_query("SELECT * FROM o_keyword where keyword like '%" . $query . "%'"); 

    while ($row = mysql_fetch_array($fetch, MYSQL_ASSOC)) { 
     $row_array['id'] = $row['id']; 
     $row_array['keyword'] = $row['keyword']; 

     array_push($return_arr,$row_array); 
    } 
echo json_encode($return_arr); 

salida de datos JSON

[{"id":"2","keyword":"Games"},{"id":"3","keyword":"Goa"}] 

Y al escribir "Ga" recibo una etiqueta li vacía en el frente.

+0

¿Su "keyword.php" vuelven en realidad algo? Comprobar con firegug ... –

+0

sí, devuelve [{"id": "2", "palabra clave": "Juegos"}, {"id": "3", "palabra clave": "Goa"}] – Elankeeran

Respuesta

1

Su código necesita ser ligeramente modificado.

while ($row = mysql_fetch_array($fetch, MYSQL_ASSOC)) { 
    $row_array['value'] = $row['id']; 
    $row_array['label'] = $row['keyword']; 

    array_push($return_arr,$row_array); 
} 

echo json_encode ($ return_arr);

Ahora su formato JSON será

[{"value":"2","label":"Games"},{"value":"3","label":"Goa"}] 
Cuestiones relacionadas