Diskuze: Validace obsahu formu

JavaScript JavaScript Validace obsahu formu

Avatar
Jiří Gracík
Redaktor
Avatar
Jiří Gracík:

Zdravíčko,

pokouším se o validaci inputů formu, ale můj kód se rozhodl u metody $(element).val() vracet undefined

<form id="form" action="mailSender.php" method="post">
        <table>
          <tr>
            <td>
              <textarea id="form-message" name="message">Vaše zpráva</textarea>
            </td>
            <td>

              <input id="form-name" type="text" name="sender-name" placeholder="Vaše jméno a příjmení"><br>
              <input id="form-email" type="text" name="sender-email" placeholder="Váš email"><br>
              <input id="form-submit" type="submit" value="Odeslat"> <input type="reset" value="Vymazat">
              <input class="invisible" type="text" name="name" value="name">
            </td>
        </table>
     </form>
$("form").submit(function (e){
        e.preventDefault();
      var isEmailValid = IsEmail($('#form-email').val());
      var isNameValid = false;
      var isMessageValid = false;

      if ($('#form-name').val() && $('#form-name').val().length > 10 && $('#form-message').val().trim().replace(/\s+/gi, ' ').split(' ').length == 2) isNameValid = true;
      if ($('#form-message').val() && $('#form-message').val().length > 25) isMessageValid = true;

      var message = "Opravte prosím následující položky formuláře:\n";
      if (!isEmailValid) message += "\nZadejte platný email";
      if (!isNameValid) message += "\nZadejte platné jméno i příjmení!";
      if (!isMessageValid) message += "\nMinimální délka zprávy je 25 znaků";

      if (!isEmailValid || !isMessageValid || !isNameValid){
        e.preventDefault();
        alert($('#form-email').val() + "->" + $('#form-email').val().length);
        alert($('#form-message').val() + "->" + $('#form-message').val().length);
        alert($('#form-name').val() + "->" + $('#form-name').val().length);
        alert(message);
      }
    });

Ze zoufalosti jsem se pokusil vypsat všechny hodnoty inputů, ovšem vždy to spadne protože -> undefined. Proč?

Odpovědět 24.10.2013 19:56
Creating websites is awesome till you see the result in another browser ...
Avatar
Silvinios
Redaktor
Avatar
Silvinios:

Jsi si jistý, že undefined vrací $(element).val()? Nechybí tam funkce IsEmail?

 
Nahoru Odpovědět 31.10.2013 19:01
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.