Jquery Autocomplete --> Récupérer la valeur de l'input
Bonjour à tous..
Un petit problème tout simple, mais ce matin je n'ai pas trop la tête aux casses têtes.
Voilà, j'ai un autocomplete JQuery qui me liste des numéros de commandes.
Pas de soucis pour cela; il fonctionne.
J'ai juste un problème pour récupérer la valeur de ce qui est renvoyé par l'autocomplete.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
<script>
$(document).ready(function() {
$('#value_new_com').autocomplete('./ajax/list_autocomplete.php');
});
function Go_new_com()
{
var numcom = $("#value_new_com").val();
alert(numcom);
$.post("ajax/valid_cmde_autocomp.php", {nc:numcom} );
$('#general').load('v3_saisie_bons_livraison.php');
}
</script>
<form id="new_num_com" method="POST" onchange="Go_new_com();">
<input type="text" id="value_new_com" style='width:100px; background:#cbc6bd; font-size:14px; padding:2px 2px 3px 2px;' >
</form> |
--> Si je saisis 25
--> il me propose toute une série de réponse correspondant
--> Je sélectionne celle qui me convient ( ex 256879 )
--> MAIS il me retourne 25 et pas 256879.
Quelqu'un à une idée ?
Meci.
Plus simple avec Jquery UI [RESOLU]
Bien.
Bonjour à tous..
Merci pour la réponse précédente, mais la piste n'était pas la bonne.
J'ai finalement opté pour le plug-in jquery UI qui est plus complet.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
<script>
$(function() {
$( "#new_com" ).autocomplete({
source: "./ajax/list_autocomplete.php",
select: function( event, ui )
{
$.ajax({
url: "./ajax/valid_cmde_autocomp.php",
data: {"nc": ui.item.value},
dataType: "html",
type: "POST",
success: function(data){
$("#definition").html(data);
$('#general').load('v3_saisie_bons_livraison.php');
$('#nav').load('navigation.php');
}
});
}
});
});
</script>
<div class="ui-widget">
<input id="new_com" style="width:120px;"/>
</div> |
Et pour faire exhaustif, le code du fichier list_autocomplete.php sur lequel j'ai un peu galéré, la clé de la réussite reposant sur l'encodage json de la réponse.
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
$term = htmlentities($_GET['term']);
$return=array();
connect(); /// ma procédure de connction perso, à vous de mettre la votre.
$sql = "SELECT num_com FROM commandes WHERE statut_com='1' AND num_com LIKE '".$_GET['term']."%'";
$req = mysql_query($sql);
while($autoCompletion = mysql_fetch_assoc($req))
{
$return[]=$autoCompletion[num_com];
}
echo(json_encode($return)); |
Bon codage à tous.