Autor Zpráva
PavelF
Profil
Dobrý den,

mohl bych mít dotaz jak udělat, aby nešla odeslat prázdná text area?

Mám takovýto kód: fiddle.jshell.net/K5Pfj/83
Ten mi funguje, ale v momentě, kdy tam napíšu třeba prázdné mezery, tak se aktivuje tlačítko odeslat..nevíte jakým způsobem to udělat, aby to nereagovalo na samotné mezery? A pak jak udělat, aby se to odeslalo po stisknutí enteru?

díky moc!
xaverista
Profil
Zdravím,

$(document).ready(function() {
$('input[type="submit"]').attr('disabled', true);
$('input[type="text"],textarea').on('keyup',function(e) {
    var textarea_value = $("#texta").val();
    var text_value = $('input[name="textField"]').val();
    var code = (e.keyCode ? e.keyCode : e.which);
    if (code == 13) {
        $("#submit").trigger('click');
        return true;
     }
     if($.trim(textarea_value).length != 0) {
        $('input[type="submit"]').attr('disabled' , false);
    }else{
        $('input[type="submit"]').attr('disabled' , true);
    }
});
 
});

//EDIT: 6.3.2016 0:30 - Přidána možnost odeslání enterem
Dan Charousek
Profil
Šel bych na to asi trochu jinak.
Chamurappi
Profil
Přesouvám z kategorie PHP, s ní to nijak nesouvisí.


Reaguji na xaveristu:
(e.keyCode ? e.keyCode : e.which)
Proč? Jednak bys mohl psát jednodušeji e.keyCode || e.which, jednak je e.which méně podporovaný.


Reaguji na Dana Charouska:
Sice jsi použil ev || window.event pro starší Explorery, ale ty neznají trim() na řetězci.
Místo this.parentNode by šlo použít univerzálnější this.form.
KryVosa
Profil
Nebylo by lepší kontrolovat, jestli string obsahuje něco jiného než mezery? (V tomto případě i prázdně řádky?)
Nějak takto? "search(/[^\n ]/)"

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

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