加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

zend-framework – 如何处理zend框架表单中的多选框?

发布时间:2020-12-13 22:40:37 所属栏目:PHP教程 来源:网络整理
导读:只是想知道它是如何工作的以及如何处理信息. 假设我有一个这样的表格: $multi = new Zend_Form_Element_Multiselect('users');$multi-setMultiOptions(array( //'option value' = 'option label' '21' = 'John Doe','22' = 'Joe Schmoe','23' = 'Foobar Baz
只是想知道它是如何工作的以及如何处理信息.

假设我有一个这样的表格:

$multi = new Zend_Form_Element_Multiselect('users');
$multi->setMultiOptions(array(
    //'option value' => 'option label'
    '21' => 'John Doe','22' => 'Joe Schmoe','23' => 'Foobar Bazbat'
));
$form->addElement($multi);

如果用户从多选框中选择一个或多个值…

>如何获取用户选择的值?
>它是否以数组形式返回?或者是什么?
>如何判断用户选择了多少项?

使用像这样的多选元素:
$multi = new Zend_Form_Element_Multiselect('users');
$multi->setMultiOptions(array(
    //'option value' => 'option label'
    '21' => 'John Doe','23' => 'Foobar Bazbat'
));
$form->addElement($multi);

您可以像这样获取元素的值:

public function indexAction()
{
    $form = new MyForm();

    $request = $this->getRequest();
    if ($request->isPost()) {

        if ($form->isValid($request->getPost())) {

            $values = $form->getValues();
            $users = $values['users']; //'users' is the element name
            var_dump $users;
        }
    }
    $this->view->form = $form;
}

$users将包含已选择的值的数组:

array(
    0 => '21',1 => '23'
)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读