0

zend フォームを使用して作成された html タグにテキストを挿入しようとしています。

これは、実際のフォーム要素を除いた、以下の私のコードです

 $this->addElements(array(

 // My other form elements

       array(
           'hidden',
           'dummy',
           array(
               'required' => false,
               'ignore' => true,
               'autoInsertNotEmptyValidator' => false,
               'decorators' => array(
                   array(
                       'HtmlTag', array(
                           'tag'  => 'div',
                           'id'   => 'DescCharsRemaining',
                           'setValue' => '
                               2000 Characters Remaining
                           '
                       )
                   )
               )
           )
       ),

       // My other form elements

HtmlTag の html プロパティではなく、HtmlTag 内に「setValue」に似たテキストを追加したいと思います。

私が得た結果、

 <div id="DescCharsRemaining" setvalue="2000 Characters Remaining"></div>

私が望む結果、

 <div id="DescCharsRemaining">2000 Characters Remaining</div>
4

2 に答える 2

2

を使用Zend_Form_Element_Textすると、次の手順を実行するだけで、フォーム内に独自の html/text を簡単に挿入できます。

$text = new Zend_Form_Element_Text('descCharsRemaining');
$text->setValue("<p>2000 Characters Remaining</p>")
     ->helper = 'formNote';

addElements次に、オブジェクトを配列に挿入します

$this->addElements(array(

   // My other form elements

   $text,

   // My other form elements

更新:以下を配列に直接含めるだけで、これを行うより単純な方法を発見しました

array(
  'note',
  'desc',
     array(
       'value' => '<p>2000 Characters Remaining</p>'
     ),
),

その結果、

<dd id="descCharsRemaining-element">
  <p>2000 Characters Remaining</p>
</dd>
于 2013-10-25T09:30:24.803 に答える