Pytam użytkownika "Jesteś pewien?" Po kliknięciu przycisku Wyślij formularz:

{{ Form::open(array('url' => 'myhome/pic-remove', 'onsubmit' => 'return confirm(\'Are you sure?\');')) }}

I dezaktywuję przycisk Prześlij na kliknięcie:

$('#submitbutton').click(function() {
    $('#submitbutton').hide();
    $('#isloading').show();  
});

Problem polega na tym, że przycisk przesyłania jest również dezaktywowany, jeśli użytkownik "nie jest pewien" i kliknie "Anuluj".

Jak mogę wyłączyć przycisk przesyłania tylko wtedy, gdy użytkownik "jest pewny" na pierwszym pytaniu i kliknie "OK"?

edytuj:

Ok, mam teraz tak, wydaje się pracować

$('#submitbuttonconfirm').click(function() {
    var r = confirm('Are you sure?');
    if (r == true)
    {
        $('#submitbuttonconfirm').hide();
        $('#isloading').show();
        return true;
    }
    else
    {
        return false;
    }      
});
0
haheute 25 listopad 2013, 22:47

2 odpowiedzi

Najlepsza odpowiedź

Myślę, że problem jest taki, że zdarzenie click jest zwolniony przed zdarzeniem submit, więc ukryjesz przycisk przesyłania przed poproszeniem użytkownika.

Możesz użyć jQuery do obsługi zdarzenia submit zamiast używania click i wyłącz przycisk:

{{ Form::open(array('url' => 'myhome/pic-remove')) }}
$('form').submit(function(e) { // Use the id of the form here, if you have more than one
    if(confirm('Are you sure?')) {
        $('#submitbutton').hide();
        $('#isloading').show();
    } else {
        return false;
    }
});
2
Jan 25 listopad 2013, 19:08

Zakładam, że najlepsza sekcja Czy wysyłasz JavaScript, który ma zostać wykonany z serwera do klienta. Nie jestem pewien, dlaczego robisz to, zamiast pisać go jako javascript, ale przypuszczam, że to nie ma znaczenia. Jak powiedział Givi, zdobądź odpowiedź z okna dialogowego Potwierdź, a następnie użyj go jako punktu decyzyjnego. Ponieważ nie jestem pewien, co to jest, zgaduję tylko o tym kodzie, ale powinno dać ci pomysł.

{
    { Form::open(
        array(
            'url' => 'myhome/pic-remove',
            'onsubmit' => 'if(confirm(\'Are you sure?\')){ $(\'#submitbutton\').hide(); $(\'#isloading\').show(); return true; } return false; '
        )
    ) }
}
0
Uptown Apps 25 listopad 2013, 19:04