2016-04-14 5 views
0
funktioniert

Ich habe dieses jQuery-Code:JQuery Bestätigen Sie mit Laravel Formular nicht

<script type="text/javascript"> 
    $('.blog-form').submit(function (e) { 
     e.preventDefault(); 
     var blog_form = $(this); 

     bootbox.confirm("Are you sure?", function (result) { 
      if (result) { 
       blog_form.submit(); 
      } 
     }); 
    }); 
</script> 

Und in meinem Laravel Form:

{!! Form::open(['action' => ['Test\\[email protected]', $thread->id], 'method' => 'delete', 'class' => 'blog-form']) !!} 
{!! Form::submit('Delete', ['class' => 'btn btn-danger']) !!} 
{!! Form::close() !!} 

Wenn ich drücken Sie die Taste vorlegen, die bestätigen-Nachricht wird auftauchen. Wenn ich 'cancel' drücke, verschwindet die Bestätigung natürlich. Also .. Wenn ich die 'OK' Taste drücke, wird die Bestätigungsnachricht ausgeblendet, aber gleichzeitig erscheint eine Bestätigungsmeldung. wieder und wieder. Also kann ich Ok nicht drücken, ohne eine weitere Bestätigungsmeldung zu erhalten. Ich konnte dieses Problem noch nicht lösen. Danke für jede Hilfe :)

+1

Es ist, weil Ihre "Bestätigungsnachricht" eine Schleife ist, wenn Sie auf "OK" klicken. Statt '$ ('. Blog-form'). Submit' versuche '$ ('. Blog-form ') zu verwenden. Klick' und es sollte dir gut gehen. – Daan

+0

funktioniert perfekt! Danke :) – WellNo

+0

Weißt du, wie ich etwas wie eine gut formatiert tun kann: löschen Sie die erfolgreiche Ausgabe nach Bestätigung der Bestätigung? – WellNo

Antwort

1

Das Problem ist, dass Sie die gleiche submit() Funktion aufrufen, die Sie in jQuery abfangen. Ein Weg, dies zu verhindern, ist mit einer Flagge.

<script type="text/javascript"> 
    var confirmed = false; 
    $('.blog-form').submit(function (e) { 
     if(confirmed){ 
      return; 
     } 
     e.preventDefault(); 
     var blog_form = $(this); 

     bootbox.confirm("Are you sure?", function (result) { 
      if (result) { 
       confirmed = true; 
       blog_form.submit(); 
      } 
     }); 
    }); 
</script> 
+0

nur ersetzen mit klicken war genug :) danke trotzdem :) – WellNo

+0

aber wissen Sie etwas wie eine Bestätigungsmeldung, nachdem der Prozess vorbei ist? wie: 'Erfolg löschen' – WellNo