2012-04-17 39 views
1

恢復我有一個形式與組合框顯示組合框的內容從Zend_Form的

/*Business user type*/ 
      $Busertype = new Zend_Form_Element_Select("Busertype"); 
     $Busertype ->setLabel('Business user type') 
      ->addFilter('StripTags') //StripTags : Enlève les caractères HTML 
       ->setRequired(true) 
       -> setMultiOptions(array(
           '0' => '-Select your business type-', 
        '1' => 'Owner', 
            '2' => 'Suplier', 
            '3' => 'Representative', 
            '4' => 'Shop' 
     )); 

我要檢索的組合框的內容,但是當我做echo($busername)檢索到組合框的值。所以,我怎麼能顯示組合框的作用

$form = new Application_Form_Inscriptionbu(); 
    $this->view->form = $form; //nous assignons le formulaire à la vue pour affichagee 
    if ($this->getRequest()->isPost()) { //Le formulaire est-il posté ? 
    $formData = $this->getRequest()->getPost(); // récupère les infos des formulaires 

    if ($form->isValid($formData)) { //Si le formulaire passe la validation 
     $v = $form->getValues(); 
     $busername =$v['Busername']; 
     echo($busername); 
    } 

回答

0

的內容

部分如果你想重新顯示從選擇該選項的文本,你可以使用getMultiOption

if ($form->isValid($formData)) { //Si le formulaire passe la validation 
    $v   = $form->getValues(); 
    $busername = $v['Busername']; 

    echo "You selected $busername which is called " . 
     $form->getElement('Busername')->getMultiOption($busername) . 
     '<br />'; 
} 
+0

我試試您的解決方案,但沒有顯示 – 2012-04-17 21:45:27

+0

我找不到getMultiOption – 2012-04-17 21:59:58

+0

對不起,因爲它是一個多選,你回來值的數組。我更新了答案,展示瞭如何獲得所選的第一個選項。要查看它們全部,可以遍歷'$ busername'來獲取每個選中的選項,然後爲每個選項調用getMultiOption。 – drew010 2012-04-17 22:00:33