nette.ajax.js – form obalený ajax třídou

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

Zdravím, prosím vědel by někdo jak vyjmout ajax v nette.ajax.js, pokud mám něco takového:
V dokumentaci jsem něco málo o tom našel, ale asi to ono nebylo…

{form neco, class => 'ajax'}
	{input list}
	{input dalsiList}

	{input sendNeco}
	{input send} {* zde potrebuji odeslat 'neajaxove', nejak vyjmout, jinak vse ajaxove :-] *}
{/form}

Dekuji za ochotu.

Editoval kuxman (21. 9. 2015 15:44)

Azathoth
Člen | 495
+
0
-

a co se tam děje ajaxově kromě toho odesílání formu?

kuxman
Člen | 4
+
0
-

Je tam více submitů na různé přepočítávání (které jedou přes ajax), radio listy, které jedou přes ajax atd..proto jsem to hodil globálně do formu, ale potřebuji udělat jednu vyjímku, závěreční submit bez ajaxu…

Editoval kuxman (21. 9. 2015 16:06)

Pavel Kravčík
Člen | 1195
+
0
-

Nestačil by Ti v tom „neajaxovém“ onSuccess() jen obyčejný redirect?

kuxman
Člen | 4
+
0
-

Až v posledním kroku to veme všechny udaje z formu a uloží je do session..

johnnie
Člen | 54
+
+1
-

Mozno to neni najcistejsie riesenie ale keby odstranis v jquery pri kliknuti na ten submit co neni ajaxovy classu ajax a nasledne submitnes ?

Unlink
Člen | 298
+
0
-

Čistejšie podľa mňa by bolo, ak by si mu tú class ajax nedával a spravil to odosielanie sám.

Ako je popísané tu: https://forum.nette.org/…bmit-handler#…
A tam si spravíš obsluhu asi takú že ak si stlačil konkrétny button tak vrátiš true a form sa normálne submitne, inak jeho spracovanie posunieš na nette.ajax a vrátiš false.

Len treba vymyslieť ako zistiť ktorý submit si stlačil, neviem či teraz niečo nemá priamo nette.ajax ale určite sa dá aj to zistiť → http://stackoverflow.com/…submit-event

johnnie
Člen | 54
+
0
-

Dnes som si na gite nette.ajax.js
Vypnutie ajaxoveho handlu

Popravde nemam s tym moc skusenosti ale myslim ze je to celkom ciste riesenie, treba vyskusat je to len tip co by mohlo pomoct.

$('a.no-ajax').netteAjaxOff();
kuxman
Člen | 4
+
0
-

Na to jsem koukal, upravil jsem třídu a hodil na submit, ale nic viditelného to nedělalo (možná něco na pozadí, nevím)…Jinak tvé první řešení jsem zkoušel, po kliknutí jsem odstranil třídu ajax a odebral event přes off() to fungovalo do té doby než se kliklo na jiný ajax prvek ve formu (pak se to chova zas jak na začátku a tlačítko dostane zase nejspíše ajax třídu).. :-(

takže: ted jsem zjistil, ze mam nevalidni HTML kod a tudíž po prvé si to nejspis prohlizec pres DOM upravi, ale po překresleni snippetu uz se to vyblije bez chapani prohlizece a todle řešení mi postačí, dekuji všem za rady..

Editoval kuxman (22. 9. 2015 11:47)