0

Zend Frameworkの要素にsetRequired()がない場合や、setRequired(false)が呼び出された場合でも、常に次のようにレンダリングされます<input ..... required="">

そして、フォームを投稿する前にフォームを検証しようとしているときに、Chrome、Firefox、およびその他の最新バージョンのブラウザーでこのコードを見ると、フィールドが必須であるというエラーメッセージが表示されます (必須ではありません)。ブラウザは必要な属性の存在を検出し、その値 (この場合は空) を気にしないようです。

さらに、<form novalidate="novalidate" ...ブラウザの検証を無視しようとしましたが、うまくいきませんでした (とにかく、ブラウザ側の検証を維持する必要があるかもしれないので、良い解決策ではありません)。

したがって、問題は、->setRequired(true)を作成してrequired="required"をレンダリングする方法と、->setRequired()または->setRequired(false)を使用しない属性をレンダリングしない方法です。

4

2 に答える 2

0

入力タグの「required」属性はHTML5属性ですが、Zendがそれをサポートしているかどうかはわかりません。

zend_formを拡張してフォーム要素を宣言する「->setRequired(true)」を使用すると、requiredを簡単に設定できます。

于 2011-10-16T15:03:48.827 に答える