Multiplier, ajax a nefunkční isSubmittedBy
- Danny
- Člen | 146
Zdravím,
mám komponentu která vykresluje více stejných formů přes Multiplier a na
každém formu jsou 2 tlačítka. Pokud to neodesílám ajaxově tak
isSubmittedBy() funguje a odesílá se co má viz
https://gyazo.com/…b75acaab4cdd
pokud to začnu odesílat ajaxově tak se pošle jen informace o tom že byl
form odeslám, nikoliv jakým tlačitkem viz.
https://gyazo.com/…699f1a45fd23
Takhle vypadá form který vytvářím v komponentě
protected function createComponentForm() {
return new UI\Multiplier(function ($id) {
$form = $this->componentFactory->create();
$form->addHidden('id', $id);
$form->addSubmit('approve', 'Schválit');
$form->addSubmit('decline', 'Zamítnout');
$form->onSuccess[] = [$this, 'formSucceeded'];
return $form;
});
}
Takhle to zpracovávám
public function formSucceeded(UI\Form $form, $values)
{
$presenter = $this->getPresenter();
if($form['approve']->isSubmittedBy()) {
}else if($form['decline']->isSubmittedBy()) {
}
}
Ani do jedno podmínky se to nedostane, což chápu protože nepřijde informace o tom jaký button se stiskl. Nicméně nechápu proč ta informace nechodí. Používám https://componette.org/…tte.ajax.js/