Formulář – rozlišení stisku dvou tlačítek

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

Mám na formuláři dvě tlačítka Submit – jedno na uložení, druhé na stornování a nevím, jak rozlišit, které bylo stisknuto. V dokumentaci je pouze napsáno, že u tlačítka na stornování je vhodné nastavit setValidationScope(FALSE), aby se formulář nevalidoval, ale jak poznat, že bylo stisknutu právě tohle tlačítko jsem nikde nenašel.

Editoval Mirek (12. 6. 2014 11:10)

Jiří Nápravník
Člen | 710
+
+5
-

Můžeš udělat, že na to tlačítko navěsíč událost onClick, tedy něco jako

$button->onClick[] = array($this, 'cancelForm');

ale dle mě lepší je si to ošéfovat v onSuccess a tam se to zjišťuje takto:

if($form['save']->isSubmittedBy()){
//formular odeslan tlacitkem save
} elseif($form['cancel']->isSubmittedBy()){
//odeslan tlacitkem cancel
}
Mirek
Člen | 86
+
0
-

Díky, ta druhá možnost je to co jsem hledal