2016-07-22 7 views
0

Es ist eine Form wie folgt aus:Wie unterbricht man die Formularbuchung bis zum Drücken der Bestätigungstaste?

<form action="" method="post"> 
    <input type="submit" value="Delete Me"> 
</form> 

ich es ändern wollen, wenn die Submit-Button drücken, eine Warnung modal öffnen, wenn drücken Sie die ‚bestätigen‘ an der modal, dann die Form Prozess.

Einige versuchen Code, aber ich frage mich, gibt es eine Möglichkeit, den Formularprozess fortzusetzen, nachdem es unterbrochen wurde, vielen Dank.

$(function() { 
     $('.delete_form').on("submit",function(){ 
      $('#deleteModal').modal('toggle'); 
      return false; //pause the submit 
     }); 

     $('.confirm_del').on("click",function(){ 
      return true; //process the form submit 
     }); 
    }); 

Antwort

2

den folgenden Code verwenden. Knopf wird in eine normale Taste geändert Schaltfläche einreichen ..

<form action="" method="post" id="f1"> 
    <input type="button" id="b1" value="Delete Me"> 
</form> 

<script> 
    $('#b1').click(function(){ 
     $('#deleteModal').modal('toggle'); 
    }); 

    $('.confirm_del').on("click",function(){ 
     $("#f1").submit(); //process the form submit 
    }); 
</script> 
+0

So würde ich empfehlen. Es ist besser, eine Einsendung zu erlauben, wenn bestätigt wird, als eine zu stornieren, wenn sie nicht bestätigt wird. – BobRodes

1

Änderung

type="submit" to type="button" 

und dann seine ID oder Klasse verwenden, um ein Ereignis-Listener öffnen Sie die Warnmeldung und senden Sie das Formular auf der Antwortwert hinzuzufügen.

+0

See kuma DK Beispiel. – BobRodes

0
<form id="theform"> 
<button onclick="check()">Send</button> 
<script> 
function check(){ 
//display warning 
} 
function ok(){ 
//call on ok press 
document.getElementById("theform").submit(); 
} 
</script> 

Starten Sie einfach den Prozess nicht unterwerfen, bis der Benutzer die Warnung akzeptiert ...

+0

'javascript:' URLs funktionieren nicht im 'onclick' Attribut. – rvighne

+0

Hoppla. Korrigiert –

0

Ihr Skript dies mag sollte:

$(function() { 
    $('.delete_form').on("submit",function(){ 
     return confirm('Are You Sure'); 
    }); 
}); 
+0

Das würde es zu einem modalen Popup machen (wie eine Warnung), was das OP nicht wollte. Sie verwenden ihr eigenes HTML-Modal. – rvighne

0

Sie können auch das Ereignis des Formulars einreichen auslösen, wenn Bestätigungstaste geklickt wird.

 $('.confirm_del').on("click",function(){ 
     $('.delete_form').trigger("submit") 
    }); 
0

versuchen diese,

<form action="" method="post" onsubmit="return isDeleteConfirm()"> 
     <input type="submit" value="Delete Me"> 
</form> 

function isDeleteConfirm(){ 
     $('.delete_form').on("submit",function(){ 
      $('#deleteModal').modal('toggle'); 
      return false; //pause the submit 
     }); 

     $('.confirm_del').on("click",function(){ 
      return true; //process the form submit 
     }); 
} 
Verwandte Themen