po ->setValidationScope(NULL) se formulář stále odesílá
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- eldest
- Člen | 58
public function createComponentAdd()
{
$form = new AppForm;
$form->getElementPrototype()->class('ajax');
$renderer = $form->getRenderer();
$renderer->wrappers['form']['container'] = NULL;
$renderer->wrappers['form']['errors'] = FALSE;
$renderer->wrappers['error']['container'] = NULL;
$renderer->wrappers['error']['item'] = 'span class=oddelit';
$renderer->wrappers['group']['container'] = NULL;
$renderer->wrappers['group']['label'] = 'h3';
$renderer->wrappers['pair']['container'] = NULL;
$renderer->wrappers['controls']['container'] = NULL;
$renderer->wrappers['control']['container'] = 'td';
$renderer->wrappers['control']['errors'] = TRUE;
$renderer->wrappers['label']['container'] = NULL;
foreach ($this->template->set['col'] as $key => $col)
{
switch($col['input']['type'])
{
case 'text':
if(isset($col['dbtype']))
{
switch ($col['dbtype'])
{
case 'int':
$form->addText($col['field'], $col['caption'], $col['input']['size'])
->addRule(Form::FILLED, 'Pole '.$col['caption'].' musí být vyplněno!')
->addRule(Form::INTEGER, 'Pole '.$col['caption']. ' nemá správný formát.')
->getLabelPrototype()->class('hidden');
break;
}
} else {
$form->addText($col['field'], $col['caption'], $col['input']['size'])
->addRule(Form::FILLED, 'Pole '.$col['caption'].' musí být vyplněno!')
->getLabelPrototype()->class('hidden');
}
break;
case 'checkbox':
$form->addCheckbox($col['field'], $col['caption'])
->getLabelPrototype()->class('hidden');
break;
};
}
$form->addSubmit('send', 'Přidej');
$form->addSubmit('cancel', 'Cancel')
->setValidationScope(NULL)
->onClick[] = 'cancelClicked';
$form->onSubmit[] = array($this, 'formAddSubmitted');
$form->onInvalidSubmit[] = array($this, 'invalidSubmit');
return $form;
}
Když kliknu na cancel, je to stejné, jako bych klikl na Přidej. Mám v tom chybu já a nebo je to bug ?