AJAX JQuery : recharger une page

WRInaute passionné
Bonjour,

j'ai dans un back office une page avec plusieurs "blocs" de données, ex : bloc1 coordonnées, bloc2 panier, bloc3 livraison ...

chaque bloc est rempli de données en html à partir de ma BDD.

j'ai rajouté en ajax un bouton modifier à côté de chaque bloc, qui m'affiche un petit div avec dedans les champs correspondants + un bouton enregistrer + un bouton annuler

quand je clique sur enregistrer, cela 1- appelle en ajx un script php qui me fait mon update dans la BDD 2- ferme le div

Le souci est que sur la page d'origine, les données ne sont pas actualisées !!!

comment faire pour que lors de ma validation, ma page soit actualisée ou rechargée (sans message de confirmation du navigateur :? )

merci à tous

EDIT : quand je disais ajax, je voulais dire jquery :)
 
WRInaute discret
Solution pas terrible : après l'appel ajax, modifier en javascript le contenu des blocs avec les nouvelles valeurs. Mais tu n'as pas de contrôle du résultat de l'appel ajax, tu "dupliques" ton code de mise en forme, etc.

Solution propre : il faut que, côté serveur, la requête renvoie le nouveau contenu HTML des blocs en question. Après cela, plus qu'à faire un $('bla bla').html(contenu) pour mettre à jour les blocs.
 
WRInaute passionné
pour la solution propre c'est ce que j'ai l'habitude de faire, mais vu qu'il y a plusieurs centaines de variables et une mise en page compliqué, bonjour la maintenance !!!

tu as une autre solution ?
 
WRInaute discret
Mmm, si cela te pose un problème de maintenance, c'est qu'il faut améliorer quelque chose dans ton code de rendu de page.

Essaye de mettre la partie qui génère les différentes div dans une fonction côté PHP, comme ca pas de duplication de code. Le mieux serait encore une combinaison xml + xslt. A noter que ce n'est pas le javascript qui fait la mise en page : le html de chaque div est contenu dans la réponse de l'appel jquery.
 
WRInaute passionné
Seb's a dit:
Mmm, si cela te pose un problème de maintenance, c'est qu'il faut améliorer quelque chose dans ton code de rendu de page.

Essaye de mettre la partie qui génère les différentes div dans une fonction côté PHP, comme ca pas de duplication de code. Le mieux serait encore une combinaison xml + xslt. A noter que ce n'est pas le javascript qui fait la mise en page : le html de chaque div est contenu dans la réponse de l'appel jquery.

pour le js c'est clair (le jquery je maitrise pas mal mais là le osuci vient que j'ai un nombre énorme de champ dans ma BD, et il y a des blocs (une bonne dizaine) pour gérer tout ça !!!

bref, c'est le casse tête, ta solution ne m'est pas envisageable
 
WRInaute discret
Et il ne t'est pas possible d'isoler le bout de php de chaque bloc (j'ai jamais fait de php, donc mes questions peuvent être à côté de la plaque) ?
 
WRInaute passionné
potentiellement c'est possible mais comme expliqué plus haut, la base contient presque 200 champs, qui plus est, répartis en une bonne dizaine de blocs distincts, donc ce serait vraiment très compliqué, long et dur en maintenance !
 
Discussions similaires
Haut