Zend_Form のデフォルトのエラー メッセージは次のようになります。
<ul class="errors">
<li>Please enter your email !</li>
</ul>
私はこのように再レンダリングしたい:
<div class="errors">Please enter your email !</div>
ありがとう
詳細な回答は提供していませんが、間違いなく役立ちます....フォームヘルパーでこのように試してください
// Email
$email = $this->createElement('text', 'email');
$email->setRequired(true)
->setLabel('Email *')
->addFilters(array('StringTrim'))
->setAttribs(array('class' => 'input-text'))
->addValidator('EmailAddress')
->addValidator('NotEmpty', true)
->clearDecorators()
->addDecorator('Label', array('escape' => false))
->addDecorator('ViewHelper')
->addDecorator('Errors')
->addDecorator(array('data'=>'HtmlTag'),
array('tag' => 'div', 'class' => 'group'));
$email->getValidator('EmailAddress')
->setMessage('invalid email', 'emailAddressInvalidFormat');
$email->getValidator('NotEmpty')
->setMessage('enter email', 'isEmpty');
これは、div のメール検証のカスタム エラー メッセージです。
elementStart
関連する,elementEnd
およびelementSeparator
オプションをErrors
デコレータ ビュー ヘルパーに渡すだけです。例えば
$element->addDecorator('Errors', array(
'elementStart' => '<div%s>',
'elementSeparator' => '<br>',
'elementEnd' => '</div>'
));
複数のエラー メッセージをどのように区切りたいかはまだ述べていません。上記を使用して改行を想定しました<br>
。