Input ajax onChange ověření
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- ondrej256
- Člen | 187
Dobrý den,
nemůžu nikde najít jak na ->addText navěsit vlastní ajaxovou validaci ihned při zadání.
Plánuju použít
http://timschlechter.github.io/…p-2.3.2.html
a chci aby po zadání každého tagu se ajaxově ověřilo zda tento záznam v db existuje. Pokud ne vypíše se flashmessage
public function createComponentForm()
{
$form = new Form();
$form->addText('item', "Item")
->setAttribute('data-role', 'tagsinput');
;
$form['item']->onChange[] = function (SubmitButton $button) {
$values = $button->getForm()->getValues();
$this->verifyItem($values->item);
};
....
....
$form->addSubmit('submit', 'submit');
....
return $form;
}
public function verfityItem($item)
{
if (....) {
$this->flashMessage("item not found');
$this->redrawControl('flashes');
}
}
Uvedený kód skončí chybou:
Cannot read an undeclared property Nette\Forms\Controls\TextInput::$onChange
Hlášce rozumím, ale už si nevím si rady jak to udělat. Někdo nějaké tipy?
- Pavel Kravčík
- Člen | 1196
Ten addText si rozšiř o ten listener: https://forum.nette.org/…-setrequired#…