IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[AJAX] Recharcher un <div> lors de l'envoi d'un formulaire


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 25
    Points : 22
    Points
    22
    Par défaut [AJAX] Recharcher un <div> lors de l'envoi d'un formulaire
    Bonjours à tous.

    Je cherche a mettre en place un script pour les commentaires postés sur mon site. En fait quand un internaute poste un commentaire, la page est rechargée entièrement et le commentaire posté est affiché.

    Moi je voudrait qu'une fois que l'internaute a cliqué sur le bouton d'envoi, seul la balise <div> contenant les commentaires soit rechargée.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <!-- Le formulaire -->
    
    <form name="comment" method="post" action="<attribute reply_to_url>" enctype="application/x-www-form-urlencoded" onsubmit="return ValidateForm()">
    
    <input type="text" name="author_unidentified" class="commentname" value="Nom" onfocus="javascript:if(this.value == 'Nom') this.value='';" onblur="javascript:if(this.value == '') this.value='Nom';"/><br/>
    
    <textarea id="htmlareatext" class="commentmessage" name="htmlareatext" onfocus="javascript:if(this.value == 'Message') this.value='';">Message</textarea><br/>
    
    <input type="submit" name="add" value="Valider"/>
    <input type="hidden" name="action" value="process"/>
    <input type="hidden" name="type" value="add"/>
    </form>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <!-- L'affichage des commentaire (fonctionne avec du Perl) -->
    
    <div id="comments">
    
    <object class=comments>
    <div style="width: 95%; height:auto;">
    
    <object class=comment count=100000>
    <div class="virtualpage">
    <table width="95%" style="text-align:left" border="1" id="article" align="center">
     <tr>
       <td valign="top" style="width:120px" style="text-align:center">
       <attribute author><br />
       <attribute created_t.dd>-<attribute created_t.mm>-<attribute created_t.yy>
       <br/>&agrave; <attribute created_t.hh>:<attribute created_t.mi>
       </td>
       <td valign="top" style="padding:2px 10px 2px 10px"><p><attribute text></p>
       <p><attribute cmd></p>
       </td>
      </tr>
     </table>
    </div></object>
    
    </div>
    
    <div id="gallerypaginate" class="paginationstyle">
    <span class="flatview"></span>
    </div>
    
    <script type="text/javascript">
    var gallery=new virtualpaginate("virtualpage", 6)
    gallery.buildpagination("gallerypaginate")
    </script>
    
    </object></div>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <!-- Un code javascript empechant les internautes de poster des commentaires vides -->
    
    <script type="text/javascript" language='javascript'>
    	function ValidateForm(){
    		MessageLength  = document.comment.htmlareatext.value.length;
    		Message = document.comment.htmlareatext.value;
    		errors = "";
    			if (MessageLength < 2){
    				errors = "Vous devez entrer un commentaire";
    			}
    			
    			if (Message == 'Message'){
    			    errors = "Vous devez entrer un commentaire";
    			}			
    			if (errors != ""){
    				alert(errors);
    				return false;
    			}
    			else{
    				document.comment.submit.disabled = true;
    				return true;
    			}
    	}
    </script>
    Les commentaires sont affichés dans une sorte de slide show (virtual pignation), ce qui je pense peut faciliter la tache. Voici le script utilisé : http://www.generap.com/files/virtualpaginate.js

    Quelqu'un saurait-il résoudre mon problème ?

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    Citation Envoyé par bebest93 Voir le message
    Quelqu'un saurait-il résoudre mon problème ?
    ça, ça risque de pas être possible
    (je doute que quelqu'un ait le temps de le faire à ta place).

    Par contre, tu trouveras ICI tous les éléments nécessaires
    Tu n'auras d'ailleurs certainement pas besoin de tout, puisqu'une partie est déjà faite (partie serveur, notamment).
    Les autres tutos peuvent t'aider aussi ...

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

Discussions similaires

  1. Erreur lors de l'envoi d'un formulaire personnalisé Outlook
    Par Jerome DEBRAY dans le forum Outlook
    Réponses: 2
    Dernier message: 28/11/2008, 08h37
  2. Recharger un <div> lors de l'envoi d'un formulaire
    Par bebest93 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 23/09/2008, 17h21
  3. Réponses: 6
    Dernier message: 19/03/2008, 16h47
  4. problème lors de l'envoi d'un formulaire
    Par fk04 dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 15/04/2007, 21h00
  5. [MySQL] Exécuter 2 actions lors de l'envoi d'un formulaire
    Par mathieu7497 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 30/03/2006, 21h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo