Formulá se neodešle bez vyplněného upload inputu
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Mariocz
- Člen | 52
Ahojte,
mám ve formuláři upload input který nemá nastaveno setRequired ale i tak se bez vyplnění formulář neodešle. Resp. nevykoná se metoda ale jen refreshne stránka. Po vybrání všech uploadů vše proběhne.
Co je tam špatně? (cíl je aby byl upload volitelný)
Díky
<?php
protected function createComponentAddProjectForm() {
$categories = array(
'drobna_architektura' => 'drobná arch.',
'interier' => 'interiér',
'rodinne_domy' => 'rodinné domy',
'obcanske_stavby' => 'občanské stavby',
'urbanismus' => 'urbanismus'
);
$form = new Form;
$form->addSelect('category', null, $categories)
->setPrompt('Vyberte kategorii')
->setRequired('Vyberte kategorii projektu');
$form->addText('name', null, 26, 26)
->setRequired('Vyplňte název projektu')
->setAttribute('class', 'with-prompt')
->setAttribute('title', 'Název projektu');
$form->addTextArea('description', null)
->setRequired('Vyplňte popis projektu')
->setAttribute('cols', 40)
->setAttribute('rows', 15)
->setAttribute('class', 'with-prompt')
->setAttribute('title', 'Popis projektu');
// image upload inputs
for ($i = 1; $i < 7; $i++) {
$form->addGroup("image$i");
$sub = $form->addContainer('image' . $i);
$sub->addText('title', null)
->setAttribute('class', 'with-prompt')
->setAttribute('title', 'Titulek obrázku');
$sub->addUpload("preview", "Miniatura")
->addRule(Form::IMAGE, 'Miniatura musí být JPEG, PNG or GIF');
$sub->addUpload("image", "Velký obrázek")
->addRule(Form::IMAGE, 'Obrázek musí být JPEG, PNG or GIF');
}
$form->setCurrentGroup();
$form->addSubmit('submitButton', 'Přidat projekt')
->onClick[] = $this->addProjectFormSubmited;
return $form;
}
public function addProjectFormSubmited($button) {
dump($button->form->getValues());
}
?>
Editoval Mariocz (26. 2. 2014 13:54)