2016-03-31 19 views
1

ich diesen Code verwenden, um ein Formular abzusendenwie leer ich das Feld

<script type="text/javascript"> 
    var frm = $('#blogform'); 
    frm.submit(function (ev) { 
     $.ajax({ 
      type: frm.attr('method'), 
      url: frm.attr('action'), 
      data: frm.serialize(), 
      success: function (data) { 
       alert(data); 
      }, 
      error: function (jXHR, textStatus, errorThrown) { 
       alert(errorThrown); 
      } 
     }); 

     ev.preventDefault(); 
    }); 
</script> 

    <form id="blogform" action="/my_url" method="post"> 
     ... 
    </form> 

Mein Problem ist, dass, wenn die Vorlage erfolgreich ist, ich will das Formularfeld leeren können.

+0

Im Form-Tag ist die ID myform, aber im jquery-Code ist es eine Blogform. Es muss dasselbe sein. –

+0

Ja, das habe ich korrigiert. – Ukor

+0

Im success() Teil, anstelle von alert() ändere es in: '$ ('# blogform') [0] .reset()' –

Antwort

2

var frm = $('#blogform'); muss var frm = $('#myform'); nach dem Formular sein, das Sie in der Frage angeben. Und um dem Formular zurückzusetzen, verwenden trigger oder reset vor alert (Daten):

$('#myform').trigger("reset"); 

oder

$('#myform')[0].reset(); 

in Ihrem PHP-Code können Sie überprüfen, ob die Vorlage erfolgreich ist oder nicht und Prozess, der Daten die jquery mögen unten:

if(data){ 
    $('#myform')[0].reset(); 
    alert(data); 
}else{ 
return false; 
} 

Hoffnung kann Ihnen helfen.

+0

Vielen Dank, es hat funktioniert. – Ukor

0

Sie können JavaScript reset() Methode verwenden.

+0

Sie sollten ein kleines Beispiel hinzufügen, um die Qualität Ihrer Antwort zu verbessern. – m02ph3u5

Verwandte Themen