Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Javascript - před odesláním formuláře by se zkontrolovali pole

Zdravím, programuji v php a mám rozdělaný web a chtěl bych tam přidat trochu toho javascriptu. NEvíte jestli by šlo přes javascript udělat že přes odesláním formuláře by se zkontrolovali pole jestli nejsou prázdné tak se odešle a eště tam mám pole které musí obsahovat jen čísla myslíte že by šlo také zjistit že obsahuje čísla?
Zmena predmetu, pôvodne: Javascript (los)

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Najjednoduchšie je dať na koniec stránky pred </body> skript, ktorý prebehne všetky formuláre a nast… nový
los 17.03.2011 20:35
los
No tak děkuju za rady pokusim se to použít :) poslední
88sking 18.03.2011 06:30
88sking

Najjednoduchšie je dať na koniec stránky pred </body> skript, ktorý prebehne všetky formuláre a nastaví obsluhu udalosti submit (ak dáš formuláru identifikátor, tak nemusíš prechádzať všetky formuláre, ale použiješ document.getElementById). V tej obsluhe si už skontroluješ, čo len chceš. Napr. kontrola textových polí na prázdnu hodnotu by vyzerala nasledovne:

for (var j = 0, jlen = document.forms.length; j < jlen; ++j)
  document.forms[j].onsubmit = function(e) {
    for (var i = 0, ilen = this.elements.length; i < ilen; ++i) {
      var el = this.elements[i];
      if (el.type == 'text' && !el.value) {
        alert('Vyplňte povinné pole ' + el.name);
      	return false;
      }
    }
  }

S jQuery môžeš použiť plugin pre validáciu alebo si napísať svoju kontrolu, ktorú nemusíš dávať na koniec stránky, ale kľudne do elementu head:

$(function() {
  $('form').submit(function() {
    var existsEmpty = false;
    $.each(this.elements, function() {
      if (this.type == 'text' && !this.value) {
        alert('Vyplňte povinné pole ' + this.name);
        existsEmpty = true;
        return false;
      }
    });
    return !existsEmpty;
  });
});

Zpět do poradny Odpovědět na původní otázku Nahoru