/ / Actualiser 2 divs en un clic Jquery - javascript, jquery, html, css

Rafraîchir 2 divs en un clic Jquery - javascript, jquery, html, css

D'accord, Je veux donc rafraîchir 2 divs avec SEULEMENT 1 CLIC DE 1 BOUTON sans actualiser la page elle-même.

J'ai essayé ce qui suit

HTML:

<div id="main">
<a>
<div id="dialogue" class="dialogue">
<b class="dialogue">Click to continue</b>
</div>
</a>
</div>

Jquery:

<script>
$(document).ready(function() { /// Wait till page is loaded

$("#dialogue").click(function(){

$("#main").load("dialogue.php?test&count=<?php echo $count ?>", function() {
/// can add another function here
});

});

$(".dialogue").click(function(){

$("#head").load("dialogue.php?head", function() {
/// can add another function here
});

});
});
</script>

Ceci dans le HTML: <div id="dialogue" class="dialogue"> doit activer 2 rafraîchissements div, je l'ai fait pour que je puisse brancher deux choses. Les scripts suivants ne font que bugs et ne peuvent se rafraîchir qu'une seule fois au lieu de quelques fois, veuillez aider.

Réponses:

3 pour la réponse № 1

Vous pouvez appeler plusieurs fonctions à l'intérieur de l'événement à simple clic, comme ceci:

<script>
$(document).ready(function() {

// click event
$("#dialogue").click(function(){

// refresh first element
$("#main").load("dialogue.php?test&count=<?php echo $count ?>", function() {
// callback
});

// refresh second element
$("#head").load("dialogue.php?head", function() {
// callback
});

});
});
</script>

Depuis #dialogue est un enfant de #mainet vous remplacez le contenu de #main au clic, le #dialogue disparaîtra une fois cliqué.


Une note mineure: votre code HTML n'est pas valide. Vous ne pouvez pas <div> élément (qui est au niveau du bloc) à l'intérieur d'un <a> (qui est en ligne). Essayez plutôt ce balisage:

<div id="main">
<a id="dialogue" class="button-dialogue">
<strong>Click to continue</strong>
</a>
</div>

</ s>

On dirait que HTML5 permet <a> éléments pour envelopper beaucoup d'autres choses maintenant. Grâce à Mathletics pour la correction.


2 pour la réponse № 2

Au lieu d'avoir:

$("#dialogue").click(function(){

Vous pouvez utiliser:

$("#main").on("click", ".dialog", function(){

Ainsi, l'écouteur du clic est attaché au parent, et travaillera sur les nouveaux éléments ".dialog" ajoutés à l'intérieur de celui-ci.