J'ai généré des données à partir d'une requête MySQL avec lesquelles je veux faire deux choses. Les données sont un tableau de noms et d'identifiants.Analyse de la saisie semi-automatique jQuery
D'abord, je veux utiliser la partie nom pour une saisie semi-automatique jQuery, de sorte que le nom est ce que vous pouvez sélectionner dans le champ. Deuxièmement, je veux tirer sur sélectionner dans la saisie semi-automatique quelque chose qui va placer l'ID de l'élément sélectionné dans un champ caché.
Voici mon JQuery:
$("#contact").autocomplete(
source: function(request, response){
$.ajax({
url: "ajax/grabdata.php?",
type: "GET",
data: request,
success: function (data) {
response($.map(data, function (el) {
return {
label: el.item.name,
value: el.item.id
};
}));
}
});
},
width: 260,
matchContains: true,
selectFirst: false,
select: function(event, ui){
$('#contact').val(ui.label);
$('#id').val(ui.value);
}
});
Voici comment je saisis les données en PHP (grabdata.php):
$sql = "SELECT DISTINCT contacts.id, contacts.firstname, contacts.lastname FROMcontacts WHERE (firstname LIKE '%$q%' OR lastname LIKE '%$q%')";
$rsd = mysql_query($sql);
while($rs = mysql_fetch_array($rsd)) {
$kdata[] = array(
"name" => $rs['firstname'].' '.$rs['lastname']."\n",
"id" => $rs['ID']."\n",
);
$dataset[] = $kdata;
}
je peux obtenir les données, mais je vais avoir du mal à parsing dans ce que je veux. Le nom doit être sélectionnable dans le champ de saisie semi-automatique, et l'ID doit être rempli en fonction du nom choisi.
Le reste de ma notation est-il correct? – user1230790
Je ne peux pas parler de la partie PHP, mais la saisie semi-automatique semble correcte. – Coz