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
+
0
-

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
+
0
-

Ten addText si rozšiř o ten listener: https://forum.nette.org/…-setrequired#…