我从服务器获取JSON数组:
mysql_select_db('******') or die("Error connecting to db.");
$res = mysql_query("SELECT DISTINCT(valeur) as val FROM *****") or die(mysql_error());
while($r = mysql_fetch_assoc($res)){
$tab[] = $r['val'];
} echo json_encode($tab);
unset($tab);
并且:
$.getJSON("autocomp.php?id=valeur", function(data){
$("#other-valeur").autocomplete({delay: 100, source: data, dataType: 'json'});
});
服务器返回一个正确的json数组:
["UMTS","RAN","Swap","Regions","Brasseur",...]
但是当我开始在输入中输入内容时,我会在firebug中收到此消息:
c is null
在jquery代码中......
我不明白的是,我正在为同一页面上的另一个输入做同样的事情,并且它工作得很好,json数组看起来一样,代码是相同的......
答案 0 :(得分:1)
它不起作用,因为自动完成需要你的json中的属性“id”和“value”。这不是这种情况。
尝试像这样返回json:
[{"id":"1","value":"UMTS","comment":"umts comment"},
{"id":"2","value":"RAN","comment":"ran comment"},
{"id":"3","value":"Swap","comment":"swap comment"}]
在你的php中,还返回一个内容类型:application / json