Zend_Form を使用しています。次のように、すべてが 1 行にまとめられた、パスワードを忘れた場合のフォームを作成したいと思います。
label: [フィールド] [送信ボタン]
そして、すべてを単一の段落タグ内に配置したいと思います。段落タグをform タグ内に配置したいと思います。基本的に、Zend_Form のデフォルトの DL タグを P タグに置き換えたいと思います。ある程度はできますが、正確にはできません。
デフォルトを使用すると、次のようになります。
class Application_Form_Forgot {
public function init() {
// my fields, no special decorators...
}
}
これにより、次の HTML が生成されます。
<form {the attributes} ><dl class="zend_form"> {the fields} </dl></form>
代わりに、次の HTML が必要です。
<form {the attributes} ><p> {the fields} </p></form>
これが私が試したことです:
class Application_Form_Forgot {
public function init() {
// my fields...
$this->setDecorators(
array(
'FormElements',
'Form',
array('HtmlTag', array('tag' => 'p')),
)
);
}
}
しかし、それはこの HTML を生成します:
<p><form {the attributes} > {the fields} </form></p>
段落タグはフォームを囲みます。正確には私が望むものではありません。
私も試しました:
- DL タグを削除する方法について、StackOverflow や他の場所での一連の投稿をグーグルで検索して読んでください。どこかで答えを見逃していて、これが重複している場合はご容赦ください。
- Zend のソースを読んで、それを行う方法を見つけます。DlDt Decorator を見つけましたが、それは要素にのみ適用され、フォームには適用されないようです。
- 段落タグをフォームの外に置くことを理解して、私の人生を続けています。
誰かが私を正しい方向に向けることができますか?これが可能であれば?
ありがとう、フィリップ