2010-09-20 5 views
2

Quelqu'un peut-il me montrer un tutoriel d'utilisation de jquery pour afficher une soumission réussie sans actualiser la page. Quelque chose de ce genre se produit sur gmail lorsqu'un message est livré et la superposition jaune qui indique que votre message a été délivré, puis disparaît.soumission soumission jquery

+1

Avez-vous même essayer de google? – zerkms

+0

Essayez ceci http://jquery.malsup.com/form/ .Ceci est celui que j'ai déjà utilisé dans mon projet – svk

+0

drôle zerkms ... je googlé beaucoup mais pas trouvé ce que je cherchais 4r – Ayush

Répondre

2

Utilisez jQuery + JSON combinaison quelque chose comme ceci:

Test.php:

<script type="text/javascript" src="jquery-1.4.2.js"></script> 
<script type="text/javascript" src="jsFile.js"></script> 

<form action='_test.php' method='post' class='ajaxform'> 
<input type='text' name='txt' value='Test Text'> 
<input type='submit' value='submit'> 
</form> 

<div id='testDiv'></div> 

_test.php:

<?php 
     // Code here to deal with your form submitted data. 
     $arr = array('testDiv' => 'Form is successfully submitted.'); 
     echo json_encode($arr); 
?> 

jsFile.js:

jQuery(document).ready(function(){ 

    jQuery('.ajaxform').submit(function() { 

     $.ajax({ 
      url  : $(this).attr('action'), 
      type : $(this).attr('method'), 
      dataType: 'json', 
      data : $(this).serialize(), 
      success : function(data) { 
         for(var id in data) { 
          jQuery('#' + id).html(data[id]); 
         } 
         } 
     }); 

     return false; 
    }); 

}); 




OU:

Vous pouvez utiliser jQuery Form Plugin

+0

ce code ci-dessus fonctionnait bien hier, mais aujourd'hui, quelque chose de bizarre se passe. Au lieu d'ajouter le contenu de ** testDiv ** avec le contenu de la page maintenant il va à test.php et montrant {testdiv => "deliver"} dans une page vide. – Ayush

+0

@Ayush: Qu'avez-vous changé dans le code d'hier. Il affiche des données JSON ('{testdiv =>" deliver "}') dans une page vide pour les raisons possibles suivantes: ** 1. ** Peut être votre fonction jQuery n'est pas appelée parce que vous avez supprimé le 'class = ' ajaxform'' de la balise 'form' qui est utilisée pour capturer l'événement de soumission dans le code jQuery. ** 2. ** Peut-être avez-vous changé le sélecteur ('.ajaxform') dans' jQuery ('.ajaxform'). Submit (.....) '. ** 3. ** Peut être vous jQuery code/fichier n'est pas inclus correctement. – NAVEED

+0

quand je vérifie en utilisant Firebug il me montre - POST http://174.132.194.155/~kunal17/devbuzzr/wp-content/themes/street/sms.php \t 404 Not Found 1.26s \t jquery.min.js (ligne 130) j'ai vérifié que l'adresse de sms.php est correcte – Ayush