Live validace ajax formulářů pomocí nette.ajax.js + live-form-validation.js
- Mathesator
- Člen | 4
Můžete mi prosím někdo poradit s live validací ajax formulářů
pomocí:
https://github.com/…ette.ajax.js
https://github.com/…m-validation
Nette mám verzi 2.3
Pokud formulář není ajaxový, live validace funguje jak má.
Pokud ve FormFactory přidám:
$form->getElementPrototype()->addClass('ajax');
formulář se odesílá ajaxem, ale live validace přestane fungovat.
(Validace nejspíš nezablokuje odeslání ajax requestu a formulář se
přerendruje).
Nemáte prosím někdo příklad jak tuto kombinaci zprovoznit? Napadlo mě
použití before hooku, ale nevím jak přesně:
<script>
$.nette.ext({
before: function (payload, settings) {
...
}
});
</script>
- David Grudl
- Nette Core | 8218
Nesouvisí to spíš s tím, co tu již bylo několikrát řešeno, viz https://forum.nette.org/…ace-pri-ajax#… – tj. nette.ajax.js není úplně kompatibilní s netteForms.js
- GEpic
- Člen | 566
David Grudl napsal(a):
Tím 2.3 a 2.4 myslíš verzi netteForms.js?
Omlouvám se, že jsem nespecifikoval. Používám nette-live-validation,
který již netteForms.js obsahuje. A vím že na 2.3 vše funguje jak má.
Každopádně navěšují třídu ajax
na submit button, nikoliv na
form element.
Editoval GEpic (8. 7. 2016 18:56)
- Mathesator
- Člen | 4
David Grudl napsal(a):
Nesouvisí to spíš s tím, co tu již bylo několikrát řešeno, viz https://forum.nette.org/…ace-pri-ajax#… – tj. nette.ajax.js není úplně kompatibilní s netteForms.js
Ano, souvisí to s tímto problémem, zkusil jsem změnit řádek 323 jak
jsi doporučil na githubu:
https://github.com/…s/issues/128
a začalo to fungovat.
díky za pomoc.
- Mathesator
- Člen | 4
GEpic napsal(a):
David Grudl napsal(a):
Tím 2.3 a 2.4 myslíš verzi netteForms.js?
Omlouvám se, že jsem nespecifikoval. Používám nette-live-validation, který již netteForms.js obsahuje. A vím že na 2.3 vše funguje jak má. Každopádně navěšují třídu
ajax
na submit button, nikoliv na form element.
Zkoušel jsem dát třídu ajax na submit button místo na form element, ale ani tak to nefungovalo…