可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
this is probably a very simple task, but currently I'm failing horribly at it. I just want to add a custom error to my form when my authentication fails.
What i tried
$form->setMessages(array( array('password' => $this->failedLoginMessage) ));
Unexpected Result
\Zend\Debug\Debug::dump($form->getMessages()); array(0) {}
If i understand the code correctly this should attach an error message to the password element. Actually looking at the setMessages i thought attaching a single-dimension array should have been enough, but it needs the 2nd dimension, too :S I'm just stuck on that simple task, sigh :)
Thanks in advance!
回答1:
My comment as answer, as you've requested:
You can also set error messages to an element directly, using:
$form->get('elemName')->setMessages(array('message1', 'message2', ...));
回答2:
Simple solution, read the code correctly... Correct usage as following:
$form->setMessages(array( 'formElementName' => array( // multiple error messages possible... ) ));
回答3:
Use this lines of code.
$form->getElement('controlname')->setErrors(array('Your custom error'));
in case the message not showing in your page check removeDecorator method used in zend form. if there is use addDecorator method befor writing error message code line.