改進默認的zend_form隱藏表單元素以及使用驗證正實數的驗證器

改進默認的zend_form的隱藏表單元素
由zend_form創建的默認的隱藏表單元素都帶有(可能並不受歡迎的)外包裝飾元素,這是因為它們通常會導致多餘的空白行進而打亂了頁面的佈局和設計。
要避之,使用addDecorators給該外包元素加上一個使之隱藏的類名即可:

$id = $this -> createElement("hidden","id");
$id -> setLabel("Hidden ID") -> addDecorators(
array('ViewHelper'
,array('HtmlTag',array('tag'=>'dt','class'=>'displayNone'))
,array('label',array('tag'=>'dd','class'=>'displayNone'))
)
);

這個displayNone的類可以寫成:

.displayNone
{
display:none;
}

驗證正實數
如果你已經知道了這個Zend_Validate_GreaterThan驗證器的存在,那就容易了:

$quantity = $this->createElement('text','quantity');
$quantity ->setLabel('Quantity:')
->addValidator('float')
->addValidator(new Zend_Validate_GreaterThan(array('min' => 0)) )
->setRequired(true)
->addValidator('NotEmpty', true);

Chinese, Traditional

發表新回應