AJAX formulář funguje tak napůl
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Pari
- Člen | 15
Ahoj,
už se tady pár hodin pachtím s poměrně jednoduchým formulářem, který by se měl zobrazovat AJAXEM. Funguje mi ve Chrome, Firefox i přes FireBug vidím, že se správně posílá, ale ostatní prohlížeče zobrazují bez AJAX.
Dle toho, že to někdo funguje soudím, že problém bude spíše na straně klienta než serveru? Možná dělám nějakou začátecnickou chybu ale už fakt nevím, forum jsem prošel skrz naskrz…
protected function createComponent($name)
{
switch ($name) {
case 'search':
....
$form->addSubmit('save', 'Zobrazit odpovídající kamery');
$form->onSubmit[] = array($this, 'searchFormSubmitted');
// Invalidace snippetů
$form->onInvalidSubmit[] = array($this,"handlePrekresliForm");
$form->onSubmit[] = array($this,"handlePrekresliForm");
....
}
public function searchFormSubmitted(AppForm $form)
{
if ($form['save']->isSubmittedBy()) {
$data = $form->getValues();
$array = array(
'resolution' => $data['resolution'],
'angle' => $data['angle'],
'power' => $data['power'],
'audio' => $data['audio'],
'alarm' => $data['alarm'],
'daynight' => $data['daynight'],
'wireless' => $data['wireless'],
'vandal' => $data['vandal']
);
$this->forward('result',$array);
}
}
public function handlePrekresliForm(AppForm $form) {
$this->invalidateControl('resultlist');
}
- Pari
- Člen | 15
Aha, tak možná na tom něco bude a jen jsem špatně interpretoval výsledek. Ještě nikdy jsem AJAX formulář nedělal, je to trošku odlišné oproti AJAX přes link.
Nicméně zajímalo by mě v čem je zakopaný pes že to nefunguje? Snippet vytvořený mám, následně ho invaliduji a pořád to nebere?