J'ai une page simple où je peux sélectionner un client, puis une fois que j'ai choisi cet autopopulation pour les projets qui appartiennent au client. J'utilise PHP/MySQL pour tirer les résultats.jQuery et Auto-populat sélectionne
J'ai pris un coup d'oeil à ceci: http://remysharp.com/2007/01/20/auto-populating-select-boxes-using-jquery-ajax/ mais je pense que cela commence par les deux champs sur la page. J'ai essayé de retravailler le code mais je n'ai pas très bien réussi.
var client_id = $('#c_id').val();
$.getJSON("../inc/get-projects.php", {id: client_id}, function(data){
projects = $('#p_id');
projects.empty();
$.each(data, function() {
var option = $('<option/>').attr('value', this.id).text(this.name);
projects.append(option);
});
});
PHP:
<?php
include "config.inc.php";
$sth = mysql_query(
sprintf(
"SELECT c_id,p_id,p_title FROM projects WHERE c_id = %s",
mysql_real_escape_string($_GET['id'])
)
);
$projects = array();
while($r = mysql_fetch_assoc($sth)) {
$projects[] = array('id' => $r['p_id'], 'name' => $r['p_title']);
}
print json_encode($projects);
exit;
?>
Oh, je vois ce qui ne va pas. Vous voyez comment j'ai nommé ma variable '$ projects' et vous avez nommé vos 'projets'? La valeur que vous avez passée dans la fonction est déjà appelée projets sans le $, donc quand vous faites projects = $ ('# p_id'); vous écrasez la sortie du serveur. J'ai mis à jour ma réponse. –
Qu'est-ce qui ne fonctionne pas avec? Obtenez Firebug pour Firefox et vérifiez ce que le serveur renvoie. –
Réponse: [] Son envoyer aucun paramètre à la page Param: id Des idées? Merci, Ryan – Coughlin