Bonjour,
J'ai une div de id=tabAffiche : Le contenu de cette div est chargé dynamiquement et contient un tableau de départements qui est issue du fichier dep.php
Je voudrais que lorsque je clique sur le bouton modifier qu'il ramène le contenu de la ligne dans le champ input de mon formulaire.
Voici le code [/contents/1351-php-introduction php] qui rempli la div:
dep.php
Grâce à JQuery je vais lancer une requête [/contents/5-ajax-asynchronous-javascript-and-xml dep.php
Je voudrai grâce à JQuery déclencher l'événement [/download/telecharger-34085027-click click] sur le bouton modifier afin d'afficher le contenu de la ligne dans le champ input du formulaire.
J'ai essayer mais je crois que je confronter à un problème d'hiérarchie d'éléments que je n'arrive pas à résoudre.
Voici que j'ai fait mais qui ne marche pas quand le tableau est en mémoire
Code complet de la page
Je crois que le problème vient du fait que c'est un tableau en mémoire (construit dynamiquement).
Car quand je copie le code final général dans une autre page que j'enregistre (les valeurs du tableaux sont maintenant fixe et non en mémoire) mon code JQuery de click sur modifier fonctionne bien.
Comment donc déclencher un click sur le lien modifier de n'importe quelle ligne du tableau en JQuery ?
Merci pour vos suggestions.
<config>Windows 7 / Firefox 38.0</config>
<signature>
anc</signature>
Modifié par aristideman (17 Jun 2015 - 17:31)
J'ai une div de id=tabAffiche : Le contenu de cette div est chargé dynamiquement et contient un tableau de départements qui est issue du fichier dep.php
Je voudrais que lorsque je clique sur le bouton modifier qu'il ramène le contenu de la ligne dans le champ input de mon formulaire.
<!DOCTYPE HTML>
<html>
<head>
<title>Fiche de saisie</title>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="css/style.css">
<script type="text/javascript" src="js/jquery-1.9.0.js"></script>
<script type="text/javascript" src="js/validation.js"></script>
</head>
<body>
<div id="frm">
<form method="POST" id="formDep" onsubmit="return false;">
<fieldset>
<legend>Informations</legend>
<div class="input">
<label>Libellé département</label>
<input type="text" name="dep" id="dep">
<span id="infodep"></span>
</div>
<div class="action">
<input type="submit" value="Enregistrer" id="save">
</div>
</fieldset>
</form>
</div>
<div id="tabAffiche"> </div>
</body>
</html>
Voici le code [/contents/1351-php-introduction php] qui rempli la div:
dep.php
<?php require('config.php');?>
<?php
$req = "SELECT * FROM departement";
$resultat = $bdd->query($req);
?>
<table class="tab1">
<tr>
<th>Code</th>
<th>Département</th>
<th colspan="2">Actions</th>
</tr>
<?php while ($donnees = $resultat->fetch()) {?>
<tr>
<td><?php echo $donnees['code_dep']; ?></td>
<td><?php echo $donnees['libelle_dep']; ?></td>
<td><a href="SaisieDep.html" class="load" rel="<?php echo($donnees['code_dep'])?>">Modifier</a></td>
<td><a href="supprimerDep.php?code_dep=<?php echo($donnees['code_dep'])?>">Supprimer</a></td>
</tr>
<?php
}
?>
</table>
Grâce à JQuery je vais lancer une requête [/contents/5-ajax-asynchronous-javascript-and-xml dep.php
function chargerDep(){
$.get('dep.php', function(reponse){
$("#tabAffiche").html(reponse);
});
}
Je voudrai grâce à JQuery déclencher l'événement [/download/telecharger-34085027-click click] sur le bouton modifier afin d'afficher le contenu de la ligne dans le champ input du formulaire.
J'ai essayer mais je crois que je confronter à un problème d'hiérarchie d'éléments que je n'arrive pas à résoudre.
Voici que j'ai fait mais qui ne marche pas quand le tableau est en mémoire
$("#tabAffiche table.tab1 a.load").click(function() {
$("#dep).val("Test Valeur à modifier");
return false;
});*/
Code complet de la page
<html><head>
<title>Fiche de saisie</title>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="css/style.css">
<script type="text/javascript" src="js/jquery-1.9.0.js"></script>
<script type="text/javascript" src="js/validation.js"></script>
</head>
<body>
<div id="frm">
<form method="POST" id="formDep" onsubmit="return false;">
<fieldset>
<legend>Informations</legend>
<div class="input">
<label>Libellé département</label>
<input name="dep" id="dep" type="text">
<span id="infodep"></span>
</div>
<div class="action">
<input value="Enregistrer" id="save" type="submit">
</div>
</fieldset>
</form>
</div>
<div id="tabAffiche">
<table class="tab1">
<tbody><tr>
<th>Code</th>
<th>Département</th>
<th colspan="2">Actions</th>
</tr>
<tr>
<td>1</td>
<td>[/contents/506-informatique Informatique]</td>
<td><a href="SaisieDep.html" class="load" rel="1">Modifier</a></td>
<td><a href="supprimerDep.php?code_dep=1">Supprimer</a></td>
</tr>
<tr>
<td>2</td>
<td>Mathematique</td>
<td><a href="SaisieDep.html" class="load" rel="2">Modifier</a></td>
<td><a href="supprimerDep.php?code_dep=2">Supprimer</a></td>
</tr>
<tr>
<td>3</td>
<td>Physique</td>
<td><a href="SaisieDep.html" class="load" rel="3">Modifier</a></td>
<td><a href="supprimerDep.php?code_dep=3">Supprimer</a></td>
</tr>
<tr>
<td>10</td>
<td>Lettres</td>
<td><a href="SaisieDep.html" class="load" rel="10">Modifier</a></td>
<td><a href="supprimerDep.php?code_dep=10">Supprimer</a></td>
</tr>
<tr>
<td>11</td>
<td>Recherche et Innovation</td>
<td><a href="SaisieDep.html" class="load" rel="11">Modifier</a></td>
<td><a href="supprimerDep.php?code_dep=11">Supprimer</a></td>
</tr>
</tbody></table></div>
</body></html>
Je crois que le problème vient du fait que c'est un tableau en mémoire (construit dynamiquement).
Car quand je copie le code final général dans une autre page que j'enregistre (les valeurs du tableaux sont maintenant fixe et non en mémoire) mon code JQuery de click sur modifier fonctionne bien.
Comment donc déclencher un click sur le lien modifier de n'importe quelle ligne du tableau en JQuery ?
Merci pour vos suggestions.
<config>Windows 7 / Firefox 38.0</config>
<signature>
anc</signature>
Modifié par aristideman (17 Jun 2015 - 17:31)