2010-08-06 4 views
1

pourquoi je ne reçois pas de données de jQuery? Variables POST toujours videjquery et le post

<!DOCTYPE html> 
<html> 
<head> 
<script src="http://code.jquery.com/jquery-latest.min.js"></script> 
<script> 
$(document).ready(function(){ 
    $("form#submit").submit(function() { 

    var fname = $('#fname').attr('value'); 
    var lname = $('#lname').attr('value'); 
     $.ajax({ 
      type: "POST", 
      url: "#", 
      data: "fname="+ fname +"& lname="+ lname, 
      success: function(){ 
       $('form#submit').hide(function(){$('div.success').fadeIn();}); 

      } 
     }); 
    return false; 
    }); 
}); 
</script> 
</head> 
<body> 
<?php 
echo 'fname:' . $_POST['fname'] . '<br/>'; 
echo 'lname:' . $_POST['lname']; 
?> 
<div class="container"> 
<form id="submit" method="post"> 
     <fieldset> 
      <legend>Enter Information</legend> 
      <label for="fname">Client First Name:</label> 
<input id="fname" class="text" name="fname" size="20" type="text"> 

      <label for="lname">Client Last Name:</label> 
<input id="lname" class="text" name="lname" size="20" type="text"> 

      <button class="button positive"> <img src="../images/icons/tick.png" alt=""> Add Client </button> 
     </fieldset> 
    </form> 
<div class="success" style="display: none;">Client has been added.</div> 
</div> 
</body> 
</html> 

Répondre

1

Ne pas attacher le gestionnaire à l'événement submit. Attachez à l'événement de clic de bouton à la place.

+0

Pouvez-vous clarifier un peu, parce que maintenant je ne comprenais pas où est le problème. Merci – user319854

-1

Test de votre réponse sur jsFiddle montre que les informations correctes est envoyé, mais quelques suggestions mineures: Définir le type de votre script

<script type='text/javascript' src='http://code.jquery.com/jquery-latest.min.js'></script> 

Utilisez .val() au lieu de ('value') `.attr ``

au lieu de $(document).ready(function(){}) utiliser simplement $(function(){})