nastavenie class pre formular

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

Mam taky problem: chcem spracovat jeden formular prostrednictvom ajaxu. Ako mam nastavit class pre tento jeden formular?(nechcem spracovavat vsetky formulare v projekte ajaxovo). V sablone tento formular nacitavam takto : {control commentForm} a v presenteri vytvaram klasicky formular : createComponentCommentForm($form = new Form() …) … jquery:

$(‚form.ajax‘).live(‚submit‘, function (event) {
event.preventDefault();
$.post(this.action, $(this).serialize());
});

Lukeluha
Člen | 130
+
0
-

Pro ajaxové odesílání formulářů využij tuto knihovnu.

Matej123
Člen | 150
+
0
-

ale ako nastavim ajax iba pre jeden formular, alebo je to nejak specialne riesene v nette.ajax.js ? (pardon ale niesom na jQuery velky odbornik).

Lukeluha
Člen | 130
+
0
-

jj, podívej se do dokumentace nebo na nějaké tutoriály. Pokud chceš opravdu jen odesílat formuláře ajaxově, o jQuery defacto nemusíš vědět vůbec nic – v té knihovně je nastaveno, že všechny formuláře/odkazy/tlačítka, které mají třídu ajax, se odešlou ajaxově, ty se nemusíš téměř o nic víc starat.

Azathoth
Člen | 495
+
+2
-

Přidat classu můžeš takhle:

$form->getElementPrototype()->addAttributes(array('class' => 'ajax'));

ale opravdu je lepší neřešit ten ajax sám, pokud nemáš hodně dobré znalosti jquery ale je lepší využít výše zmiňovanou knihovnu.