Zend:我如何从Select元素表单中获取值?

时间:2014-02-10 23:42:38

标签: forms zend-framework select element

你好我和zend一起使用这个问题可能很荒谬,但我从以下方面获取价值时遇到了麻烦:

            $country = new Zend_Form_Element_Select('_country');
            $country->setLabel('Country:');
            $country->addMultiOptions(array('0'=>'United States',
                                            '1'=>'Bolivia',
                                            '2'=>'Argentina',
                                            '3'=>'Afganistan'));
            $country->setRequired(true);

但是我不知道我怎么能得到这些值,我在我的控制器上尝试了这样:

if ($this->_request->getPost()) {
        $formData = $this->_request->getPost();
        $form = new App_Form_CustomerForm();

        if ($form->isValid($formData)) {
            $customer = $customerDao->getById($id);             
                            $customer->setCountry($formData[0]['_country']);                
            $customerDao->save($customer);
            $this->_helper->redirector('index');

            return;

我想只使用html代码来做这个选择,但我想知道如何获得这些值。

1 个答案:

答案 0 :(得分:0)

您可以使用getValue()方法从zend元素中获取值  Populating and Retrieving Values
代码是

if ($form->isValid($formData)) {
    $customer = $customerDao->getById($id);             
    $customer->setCountry($form->getValue('_country'));                
    $customerDao->save($customer);
    $this->_helper->redirector('index');

    return;
    }