2011-03-16 60 views
0

我試圖實現Zend_Form的使用裝飾以下HTML輸出:的Zend表單裝飾 - 添加選項來輸入標籤的標籤

<tr> 
    <td id="from-label" **class="labelcell"**><label for="from" class="required">From</label></td> 
    <td><input type="text" name="from" id="from" value="" class="text"></td> 
</tr> 

我嘗試添加類屬性,例如內嵌樣式屬性在標籤的封閉標籤上。在上面的例子中,我要添加class="labelcell

的裝飾語句如下:

$from = $this->createElement('text', 'from', array(
          'validators'=> array(array('regex', false, '/^[0-9]+/i')), 
          'required'=> true, 
          'label'=> 'From' 
         ) 
        ); 
     $from->setAttrib('class', 'text'); 
     $from->setDecorators(
       array(
       'ViewHelper', 
       'Description', 
       'Errors', 
       array(array('data'=>'HtmlTag'), array('tag' => 'td')), 
       array('Label', array('tag' => 'td')), 
       array(array('row' => 'HtmlTag'), array('tag' => 'tr')) 
       )); 

有沒有一種方法可以達到我想要的東西,而不擴展Zend_Form_Decorator_Label傳遞更多的選擇,封閉的標籤?

回答

1

有一個選項你應該能夠在你的配置陣列來定義它,也試試這個:。

$from->setDecorators(array(
    'ViewHelper', 
    'Description', 
    'Errors', 
    array(array('data'=>'HtmlTag'), array(
     'tag' => 'td' 
    )), 
    array('Label', array(
     'tag' => 'td', 
     'class' => 'labelcell' 
    )), 
    array(array('row' => 'HtmlTag'), array(
     'tag' => 'tr' 
    )), 
)); 
2
$from->setDecorators(array(
'ViewHelper', 
'Description', 
'Errors', 
array(array('data'=>'HtmlTag'), array(
    'tag' => 'td' 
)), 
array('Label', array(
    'tag' => 'td', 
    'class' => 'labelcell' 
    'tagClass' => 'YourClassNameHere' <- THIS IS WHAT WILL ADD TO LABEL WRAPPER 

)), 
array(array('row' => 'HtmlTag'), array(
    'tag' => 'tr' 
)), 

));

相關問題