2011-08-30 4 views
-2

Tout va bien JST une petite erreur bits uniquementvaleur Code clé Envoyer jquery

quand je presse entrer envoie la valeur througn .post $(). après le succès de la page est actualisée pourquoi

et si j'utilise un autre keycode il restera même valeur insérée, mais pas de rafraîchissement

<script> 
    $(document).ready(function(){ 
    $('#newNumber').focus(); 
    $('#newNumber').keypress(function(e){ 
      var code=e.keyCode; 
      //alert(code); 
      if(code==61) 
       { 
      var nno=$('#newNumber').val(); 
      $('#load').show(); 
      if(nno=="") 
       { 
        $('#load').hide(); 
        $('#alertBox').show(); 
        $('#newNumber').focus(); 
        $('#alertBox').html("<div class=error><span id=alerttext class='alerttext'>Empty Field</span><div id=close class='close'><img src='images/close.png'/></div></div>"); 
        $('#close').click(function(){$('#alertBox').fadeOut(2000);}); 

      } 
      else 
      { 
       $.post("NumberAction/addAction.php",$('#contentForm').serialize(),function(result){ 
        if(result=="yes") 
         { 
          $('#load').hide(); 
          $('#alertBox').show(); 
          $('#alertBox').html("<div class=warning><span id=alerttext class='alerttext'>Already Exists</span><div id=close class='close'><img src='images/close.png'/></div></div>"); 
          $('#newNumber').val(""); 
          $('#newNumber').focus(); 
          $('#close').click(function(){$('#alertBox').fadeOut(2000);}); 
        } 
        else if(result=="done") 
        { 
         $('#load').hide(); 
         $('#alertBox').show(); 
         $('#alertBox').html("<div class=success><span id=alerttext class='alerttext'>New number is added</span><div id=close class='close'><img src='images/close.png'/></div></div>"); 
          $('#newNumber').val(""); 
          $('#newNumber').focus(); 
          $('#close').click(function(){$('#alertBox').fadeOut(2000);}); 
        } 
        else if(result=="error") 
        { 
         $('#load').hide(); 
         $('#alertBox').show(); 
         $('#alertBox').html("<div class=error><span id=alerttext class='alerttext'>Error in adding</span><div id=close class='close'><img src='images/close.png'/></div></div>"); 
          $('#newNumber').val(""); 
          $('#newNumber').focus(); 
          $('#close').click(function(){$('#alertBox').fadeOut(2000);}); 
        } 
       }) 
      } 
      } 
     }) 
    }) 
</script> 

valeurs Maintenant va, mais quand j'appuyez sur Entrée, il envoie la valeur mais aussi il rafraîchir la page afin que je ne suis pas en mesure d'utiliser la touche Entrée code clé

+0

Sans montrer votre code, nous ne pouvons que deviner, et cela ne vous aidera pas beaucoup Il est un code * * problème, alors s'il vous plaît envoyer votre code –

+0

.. A peine de connaître votre question.Vous voulez dire que le retour ne parvient pas à poster parfois? – Shisoft

Répondre

0

Je suppose que vous détectez appui sur une touche quelque part à l'intérieur de balise FORM et en appuyant sur Entrée non seulement vous envoyer le ajax en utilisant .post $ , mais aussi dire au navigateur de soumettre le formulaire de façon régulière afin que la page soit rechargée . Pour éviter cela, vous pouvez faire une des deux choses:

1) soumission Prévenir de la forme, en utilisant:

$("#yourform").submit(function(e) {e.preventDefault()}); 

2) Après avoir fait ".post de $ (" NumberAction/addAction.php », .... » faire return false;

<script> 
$(document).ready(function(){ 
$('#newNumber').focus(); 
$('#newNumber').keypress(function(e){ 
     var code=e.keyCode; 
     //alert(code); 
     if(code==61) 
      { 
     var nno=$('#newNumber').val(); 
     $('#load').show(); 
     if(nno=="") 
      { 
       $('#load').hide(); 
       $('#alertBox').show(); 
       $('#newNumber').focus(); 
       $('#alertBox').html("<div class=error><span id=alerttext class='alerttext'>Empty Field</span><div id=close class='close'><img src='images/close.png'/></div></div>"); 
       $('#close').click(function(){$('#alertBox').fadeOut(2000);}); 

     } 
     else 
     { 
      $.post("NumberAction/addAction.php",$('#contentForm').serialize(),function(result){ 
       if(result=="yes") 
        { 
         $('#load').hide(); 
         $('#alertBox').show(); 
         $('#alertBox').html("<div class=warning><span id=alerttext class='alerttext'>Already Exists</span><div id=close class='close'><img src='images/close.png'/></div></div>"); 
         $('#newNumber').val(""); 
         $('#newNumber').focus(); 
         $('#close').click(function(){$('#alertBox').fadeOut(2000);}); 
       } 
       else if(result=="done") 
       { 
        $('#load').hide(); 
        $('#alertBox').show(); 
        $('#alertBox').html("<div class=success><span id=alerttext class='alerttext'>New number is added</span><div id=close class='close'><img src='images/close.png'/></div></div>"); 
         $('#newNumber').val(""); 
         $('#newNumber').focus(); 
         $('#close').click(function(){$('#alertBox').fadeOut(2000);}); 
       } 
       else if(result=="error") 
       { 
        $('#load').hide(); 
        $('#alertBox').show(); 
        $('#alertBox').html("<div class=error><span id=alerttext class='alerttext'>Error in adding</span><div id=close class='close'><img src='images/close.png'/></div></div>"); 
         $('#newNumber').val(""); 
         $('#newNumber').focus(); 
         $('#close').click(function(){$('#alertBox').fadeOut(2000);}); 
       } 
      }) 
      // return false to prevent regular form submission 
      return false; 
     } 
     } 
    }) 
}) 
</script> 
+0

Oui son travail maintenant cette seule ligne pour empêcher la soumission a fait le travail Encore une chose est ce modèle de codage ohk ohk, bon, normal, moyen –

Questions connexes