Autor Zpráva
Sennin
Profil
Zdravím ....
Dal som si dokopy Validation Form -> email s jQuery Enabled/Disabled Submit
Teda ak neni správne vyplnený email ostáva tlačidlo na odoslanie disabled...
Môj problém je že potrebujem ak užívateľ zadal email v správnom formáte ale pri zadávaní hesla sa pomýlil a odoslal formulár ako dám vedieť že je input email vyplnený nech ostane submit enabled aby sa nevracal do pôvodnej hodnoty disabled ako keby input bol prázdny.

radšej prikladám kód aby sme sa nezaplietli :)

$(document).ready(function() {
    $('.sendButton').attr('disabled', true);
    $('#email').keyup(function() {
        $(".error").hide();
        var hasError = false;
        var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
        var empty = false;
        var emailaddressVal = $("#email").val();
        var btnBlock = $('.sendButton').attr('disabled', true);
        if(emailaddressVal == '') {
            $("#email").after('<span class="error text-danger">Prosím zadajte vašu emailovú adresu.</span>');
            hasError = true;
            btnBlock = true;
        }
        else if(!emailReg.test(emailaddressVal)) {
            $("#email").after('<span class="error text-danger">Zadajte platný email.</span>');
            hasError = true;
            btnBlock = true;
        }
        else if (emailReg.test(emailaddressVal)) {
            $("#email").after('<span class="error text-success">Email má platný formát.</span>');
            hasError = true;
            $('#email').each(function() {
                if ($(this).val().length == 0) {
                    empty = true;
                }
            });
            if (empty) {
                $('.sendButton').attr('disabled', false);
            } else {
                $('.sendButton').removeAttr('disabled', true);
            }
        }
        if(hasError == true) { return false; }
    });
});
Sennin
Profil
tak vyriešené...
Stačilo pred
$('#email').keyup(function() {
vložiť
var emailInput = $("#email").val();
    if(emailInput !== '') {
        $('.sendButton').removeAttr('disabled', true);
    } else {
        $('.sendButton').attr('disabled', true);
    }

Prikladám aj celý js ak by niekomu pomohlo...

$(document).ready(function() {
    var emailInput = $("#email").val();
    if(emailInput !== '') {
        $('.sendButton').removeAttr('disabled', true);
    } else {
        $('.sendButton').attr('disabled', true);
    }
    $('#email').on('keyup blur', function() {
        $(".error").hide();
        var hasError = false;
        var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
        var empty = false;
        var emailaddressVal = $("#email").val();
        if(emailaddressVal == '') {
            $("#email").after('<span class="error text-danger">Prosím zadajte vašu emailovú adresu.</span>');
            hasError = true;
            $('.sendButton').attr('disabled', true);
        }
        else if(!emailReg.test(emailaddressVal)) {
            $("#email").after('<span class="error text-danger">Zadajte platný email.</span>');
            hasError = true;
            $('.sendButton').attr('disabled', true);
        }
        else if (emailReg.test(emailaddressVal)) {
            $("#email").after('<span class="error text-success">Email má platný formát.</span>');
            hasError = true;
            $('.sendButton').removeAttr('disabled', true);
        }
        if(hasError == true) { return false; }
    });
});

input <input type="email" id="email">
submit <input type="submit" name="send" class=" sendButton" value="Registrovať">

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: