0

要素(およびそのIDラベルなど)が要素の名前の代わりに別のID値を使用するようにZend_Formに指示するにはどうすればよいですか?

1ページにいくつかのフォームがあります。それらのいくつかは名前を繰り返しています。したがって、Zend_Formが名前を使用して要素のIDを作成すると、同じIDを持つ複数の要素になってしまい、(X)HTMLドキュメントが無効になります。

同じ要素名を使用することに固執する必要があることを考えると、これを修正するための最良の解決策は何ですか(それらはすべてのフォームに共通のハッシュであり、Zend_Formハッシュ要素の使用は本当に問題外です)?

4

2 に答える 2

0

Zend_Form_Element配列を取るsetAttribsというメソッドがあります。あなたは次のようなことをすることができるかもしれません$element->setAttribs(array('id' => "some_id"));

または、$ element-> setAttrib('id'、'some_id');を実行できます。

于 2009-10-15T18:39:52.977 に答える
0

ありがとう、クリス・グティエレス。

ただし、私が言ったように、-labelのようなデフォルトのデコレータで生成されたIDを利用する必要がありました。ただし、$ element-> setAttribs()では不可能です。

したがって、 http ://framework.zend.com/issues/browse/ZF-7125に基づいて、次のようにしました。$ element-> clearDecorators(); $ element-> setAttrib('id'、'some_id'); $ element-> addDecorator( "ViewHelper");

これを見た人は誰でも:私が必要としていたものにはこれで十分だったことに注意してください。しかし、あなたには合わないかもしれません(デフォルト設定にはviewHelperデコレータ以上のものがあります)。

于 2009-10-15T20:05:25.617 に答える