2014-03-06 73 views
1

我正在尋找一種方法,我可以在表內添加我的zend表單元素,我試過下面這個方法,但它不工作:我想要這個元素在它下面的表內。下面表內的zend表單元素

$name2 = new Zend_Form_Element_Text('search'); 
$name2->setLabel('Search Enterprise Name:');  
$name2->addValidator('NotEmpty')  
      ->setDecorators(array( 
         'FormElements', 
         array('HtmlTag', array('tag' => 'table', 'id' => 't1')), 'Form', 
         )); 

<div class="col-md-6" style="margin-left: 0;"> 
<table class='spreadsheet dataTable' cellpadding='0' cellspacing='' id="t1"> 
<thead> 

<tr role="row"> 
<th>ENTER SERVICE PROVIDER USED</th> 

</tr> 
</thead>  
</table> 
<button type="button" onclick="alert('I work!')">Click Me!</button> 
</div> 

enter image description here 感謝例如PIC提前

+0

我應該在phtml中回顯元素嗎? –

回答

1

如果我理解正確的問題,您可以添加項目進入視野。
Application_Form_Toto的形式聲明您的物品。
在你的行動來聲明表單視圖

$form = new Application_Form_Toto(); 
$this->view->form = $form; 

呼叫你的HTML的元素(視圖)

<table>...<tr>...<td><?php echo $this->form->search;?></td>...</tr>...</table> 
+0

謝謝老兄工作像一個魅力 –

+0

謝謝你的回報:) – doydoy44

+0

但我需要問我如何確保相同的元素不會出現在我的zend形式上面,而是隻在我的表格下面的形式。 –

0

如果你只是想要從表格文件中的單個元素然後,

class Form_Test() { 
public function init() { 
    $name2 = new Zend_Form_Element_Text('search'); 
    $name2->setLabel('Search Enterprise Name:');  
    $name2->addValidator('NotEmpty')  
     ->setDecorators(array( 
        'FormElements', 
        array('HtmlTag', array('tag' => 'table', 'id' => 't1')), 'Form', 
        )); 
    } 
} 

在控制器文件:

$form = new Form_test(); 
$this->view->form = $form; 

在可以調用單個元素只能作爲視圖文件,

<table>...<tr>...<td><?php echo $this->form->getElement("search");?></td>...</tr>...</table> 

另外,如果你不想被從裝飾控制你的設計,則可以簡單地調用removeDecorator()在形式和用這種方法來調整你的設計從視圖本身。