2014-04-10 12 views
13

Ich versuche, eine Bestätigung hinzuzufügen, bevor ein Formular mit jQuery übergeben wird. Ich fand ein schönes Beispiel in einer anderen Stack Overflow Frage form confirm before submit, aber ich kann es nicht zum Laufen bringen.Bestätigung vor dem Senden des Formulars mithilfe von jQuery

jQuery:

$(function() { 
    $('form#delete').submit(function() { 
     var c = confirm("Click OK to continue?"); 
     return c; 
    }); 
}); 

Vorlage:

<form id="delete" action="{% url 'item_delete' item.id %}" method="post">{% csrf_token %} 
    <input class="floatright" type="submit" value="Delete" /> 
</form> 

Wie können wir das erreichen?

Antwort

15

Sie das Formular abschicken und nach bestätigen einchecken, müssen Sie die inverse

JS:

$(function() { 
    $("#delete_button").click(function(){ 
     if (confirm("Click OK to continue?")){ 
     $('form#delete').submit(); 
     } 
    }); 
}); 

HTML:

<form id="delete" action="{% url 'item_delete' item.id %}" method="post">{% csrf_token %} 
    <input id="delete_button" class="floatright" type="button" value="Delete" /> 
</form> 
+0

funktioniert perfekt jetzt, dank –

+0

Ich habe 'Event.preventDefault();' in einem ‚anderen‘ Zustand – campeterson

+0

Dies wird ** nicht ** Arbeit, wenn Sie das Formular in irgendeiner Weise einreichen neben diesen Button klicken (zB durch Drücken der Eingabetaste an einem anderen Eingang). @ user3311206's Antwort ist deswegen besser. – Ben

0

Achten Sie darauf, dass Sie Ihren Code setzen in $(document).ready(), wie folgt:

$(document).ready(function() { 
    $('form#delete').submit(function() { 
     var c = confirm("Click OK to continue?"); 
     return c; 
    }); 
}); 
12
$('#delete').submit(function(event){ 
    if(!confirm("some text")){ 
     event.preventDefault(); 
     } 
    }); 
0
$(function() { 
     $('form#delete').click(function(e) { 
     e.preventDefault(); 
     var c = confirm("Click OK to continue?"); 
     if(c){ 
      $('form#delete').submit(); 
      } 
     }); 
    }); 

    <form id="delete" action="www.google.com"> 
     <input id="deletesubmit" type="submit" value="Delete" /> 
    </form> 
Verwandte Themen