如何在脚本中获取自动完成表单的多个json文件值

请,我是php的初学者..我想使用json编码的数组,如下所示: http : //stegonia.fr/autocomplete/index2.php (你可以看到var_dump的结果)。 我希望能够在自动填充表单中看到值和标签名称,并将ID号存储在我的数据库中。

我想使用这个自动完成解决方案:

http://stegonia.fr/autocomplete/index3.php

这个解决方案的javascript(index3)是:

 $(document).ready(function () { $('#speciesname').typeahead({ source: function (query, result) { $.ajax({ url: "server3.php", data: 'query=' + query, dataType: "json", type: "POST", success: function (data) { result($.map(data, function (item) { return item; })); } }); } }); }); 

server2的php代码就是这个:

 $term = trim(strip_tags($_GET['term'])); $a_json = array(); $a_json_row = array(); if ($data = $mysqli->query("SELECT * FROM `taxrefv11_mini` WHERE `GROUP2_INPN` = 'oiseaux' and `NOM_VERN` LIKE '%$term%' ORDER BY `NOM_VERN`")) { while($row = mysqli_fetch_array($data)) { $nomlat = htmlentities(stripslashes($row['NOM_VALIDE'])); $nomvern = htmlentities(stripslashes($row['NOM_VERN'])); $code = htmlentities(stripslashes($row['CD_REF'])); $a_json_row["id"] = $code; $a_json_row["value"] = $nomvern.' '.$nomlat; $a_json_row["label"] = $nomlat.' '.$nomvern; array_push($a_json, $a_json_row); } } // jQuery wants JSON data echo json_encode($a_json); flush(); $mysqli->close(); 

请,我不知道javascript我的问题是:

如果我使用server2.php发出的json文件,index3的javascript的正确语法是什么,以获取“id”,“value”和“label”的值?

谢谢奥利维尔

有人帮我解决了。 解决方案下方。 但是有一个问题:当鼠标hover在自动填充表单中的菜单上时,菜单项会消失。 它在这里讨论:

将鼠标hover在自动填充表单中的菜单上时,为什么菜单项会消失

这是整个php文件。 此文件调用发送json的server2.php文件( http://stegonia.fr/autocomplete/server2.php

这里整个index.12.php( http://stegonia.fr/autocomplete/index12.php

    Bootstrap Autocomplete with Dynamic Data Load using PHP Ajax         
Search a species name and press enter (linotte for example) :

The code number (id number) of the previous selected species is :