2010-07-25 77 views
0

我知道我可以設置ignore標誌上Zend_Form_Element以便它獲取值等時,忽略Zend_Form_Element忽略標誌不起作用?

$this->addElement('submit', 'btnLogin', array(
    'label' => 'Login', 
    'ignore' => true 
)); 

但是當我做

foreach ($this->getElements() as $elem) { 
    echo $elem->getName() . "<br />"; 
} 

它劇照包括btnLogin

回答

6

The ignore -flag will only en確保表單元素沒有得到name-屬性有效地將其從發佈表單數據中刪除它不包括在表單級別($form->getValues())上檢索表單值時。這樣做例如,當您將無法獲得該元素的值:

foreach ($form->getValues() as $name => $value) { 
    // ... 
} 
+0

嗯我仍然得到'' – 2010-07-25 12:40:59

+0

你'right right ...我在Zend Framework和ExtJS中混淆了'ignore'處理 - 愚蠢的...'ignore'只會確保在表單級別上檢索數據時不包括元素的值('$ form - >的GetValues()')。我會相應地調整我的答案。 – 2010-07-25 12:46:44

+0

另請注意,如果您有必需的元素,然後將禁用屬性設置爲true(例如,如果您想禁用因ACL而不允許更改的表單元素),則還必須更改所需元素假。忽略設置不會覆蓋元素的必需設置。 – Jody 2011-11-08 17:57:19