Remplir Textfield via une liste
Bonjour,
Je suis un grand débutant en javascript et ajax, c'est pourquoi je viens chercher de l'aide ici :)
Donc j'ai une liste de nom de classes, et en dessous un champ de saisie vide. Je récupère les noms de classes de la base de données pour les mettrent dans la liste, jusque là tout va bien. Après je souhaiterais que quand la personne choisi une classe dans la liste, le nom de classe apparaisse dans le champ de saisie, pour que par la suite la personne modifie son nom.
Ce que je n'arrive pas a faire c'est récupérer le nom de classe et le mettre dans le champ. J'ai trouvé des tuto mais j'ai pas réussi.
Voici le formulaire
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
echo "<center>";
echo "<h3>Modifier le nom d'une classe</h3><br/>";
//Formulaire permettant de modifier une classe
echo '<FORM ACTION="maj_classe.php" NAME="maj_classe" METHOD="POST">';
$ps = mysql_query("SELECT * FROM classe;");
echo '<table>';
echo '<tr><td>Liste</td><td><select name="class" onchange="nomClasse()"><option>Classe</option>';
while ($donnees = mysql_fetch_array($ps)){
$i = $donnees['classe'];
echo '<option value="'.$i.'">'.$i.'</option>';
}
echo '</select></td></tr>';
echo '<tr><td>Nom de classe</td><td><input type="text" name="nom" id="nom" value="'.$_POST['nom'].'" disabled=true></td></tr>';
echo '<tr><td colspan="2"><INPUT TYPE="submit" NAME="OK" VALUE="Valider"><INPUT TYPE="reset" NAME="effacer" VALUE="Effacer"></td></tr>';
echo '</table>';
echo "</FORM>";
echo "</center>"; |
Et donc apres j'ai mis ce code dans le meme fichier :
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
|
<script type='text/javascript'>
function nomClasse(){
var xhr_object = null;
if(window.XMLHttpRequest) // Firefox
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // Internet Explorer
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
return;
}
xhr_object.open("POST", "classe.php", true);
xhr_object.onreadystatechange = function() {
if(xhr_object.readyState == 4)
var nom = eval(xhr_object.responseText);
}
xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
var data = "nom="+nom+"&form="+f.name;
xhr_object.send(data);
}
</script> |
Voilà si vous pouvez m'aider, parce que là je suis un peu bien perdu ^^