Live validace ajax formulářů pomocí nette.ajax.js + live-form-validation.js

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Mathesator
Člen | 4
+
0
-

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
+
0
-

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
+
0
-

Mě to v této kombinaci (nette.ajax.js a nette-live-validation) funguje v pořádku jak ajax tak non-ajaxově jak na 2.3 tak 2.4.

Editoval GEpic (8. 7. 2016 18:29)

David Grudl
Nette Core | 8218
+
0
-

Tím 2.3 a 2.4 myslíš verzi netteForms.js?

GEpic
Člen | 566
+
0
-

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
+
+1
-

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
+
0
-

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…

GEpic
Člen | 566
+
0
-

A inicializuješ nette ajax? :) Popř. pošli celý @layout.latte ať vidíme :)