如何使用zend_form在文本框旁边显示百分比符号

时间:2011-03-22 16:10:08

标签: zend-framework zend-form

我想使用zend_form在文本框旁边显示一个百分比符号。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

您可以在Zend_Form类的类扩展中使用setLabel()。例如:

class Application_Form_Discount extends Zend_Form
{

    public function init()
    {
        $this->setName('discount');

        $id = new Zend_Form_Element_Hidden('id');
        $id->addFilter('Int');

        $discount= new Zend_Form_Element_Text('discount');
        $discount->setLabel('Discount')
               ->setRequired(true)
               ->addFilter('StripTags')
               ->addFilter('StringTrim')
               ->addValidator('NotEmpty')
                   ->setDescription('%')
                   ->setDecorators(array(
             'ViewHelper',
             array('Description', array('placement' => Zend_Form_Decorator_Abstract::APPEND, 'tag' => 'em'));


        $submit = new Zend_Form_Element_Submit('submit');
        $submit->setAttrib('id', 'submitbutton');

        $this->addElements(array($id, $discount, $submit));
    }


}

然后,您可以直接从控制器操作呈现表单:

$form = new Application_Form_Discount();
        $form->submit->setLabel('Add');
        $this->view->form = $form;

这将在表单上显示一个标签为“Discount”的文本框,文本框,然后是包含%符号的标签。