0

次のようなフォーム要素を追加しています。

$this->addElement('text', 'product_name', array(
    'label' => 'product name',
    '... )
);

テキスト入力で行っているので、デコレータ スクリプトproduct_nameでラベルを参照したいのですが、「addElement」によってレンダリングされるラベル タグには「name」属性がありません。どうすれば問題を解決できますか?ViewScriptproduct_name<?php echo $this->form->product_name; ?>

4

1 に答える 1

0

オプション 1: Zend のマニュアルを使用し、 「個々のデコレータのレンダリング」セクションをチェックして、ラベルを単独でレンダリングする方法を確認してください。

オプション 2:ラベル部分をスキップし、次のようにフォーム コードでそのデコレータを削除してから、フォームのビュー スクリプトに追加したいスタイルを直接追加できます。

  $element = new Zend_Form_Element_Text('product_name');
  $element->removeDecorator('HtmlTag')
          ->removeDecorator('Label');

次に、ビュー スクリプトで次のようにします。

  <span class="label"> Product Name: </span> <?php echo $this->form->product_name; ?>
于 2013-10-28T05:14:41.527 に答える