1

選択リスト()にデータを入力しようとしていますZend_Form_Element_Selectが、これら2つの配列を試しました。(これらはvarダンプです)

これは機能します:

array(2) {
  [0] => array(2) {
    ["key"] => int(1)
    ["value"] => string(4) "Test"
  }
  [1] => array(2) {
    ["key"] => int(2)
    ["value"] => string(5) "Test2"
}

これはしません:

array(3) {
  [0] => array(2) {
    ["key"] => int(1)
    ["value"] => string(16) "Test Kategorie 1"
  }
  [1] => array(2) {
    ["key"] => int(2)
    ["value"] => string(16) "Test Kategorie 2"
  }
  [2] => array(2) {
    ["key"] => int(3)
    ["value"] => string(4) "rene"
  }
}

これは私のコードの抜粋です:

$select = new Zend_Form_Element_Select('video_category', array(
      'required'      => true,
      'label'         => 'label_video_category',
    //'multioptions'    => $this->categories,
      'description'   => 'text_video_category',
      'class'         => 'input',
      'id'          => 'select_video_category'
));
$options =  array(
            array(  'key'   => 1, 
                    'value' => 'Test'),
            array(  'key'   => 2,
                    'value' => 'Test2'),
         );
Zend_Debug::dump($options);
$select->addMultioptions($this->categories);
$this->addElement($select);

だから、誰かが私のために何か手がかりを持っているなら、私はこれに何時間も立ち往生しているので、私は非常に感謝するでしょう...

4

1 に答える 1

1

addMultioptionsで$this->categoriesを使用しています。この変数にオプションを割り当てているかどうかを確認してください。

     $this->categories = $options;

次のコードは、両方のアレイで機能しました。

      $form = new Zend_Form();
      $select = new Zend_Form_Element_Select('video_category', array(
                 'required'      => true,
                 'label'         => 'label_video_category',
                  'description'   => 'text_video_category',
                  'class'         => 'input',
                 'id'          => 'select_video_category'
    ));

    $select->addMultioptions($this->categories);
$form->addElement($select);

使用されるアレイ:

   $options =  array(
        array(  'key'   => 1, 
                'value' => 'Test'),
        array(  'key'   => 2,
                'value' => 'Test2'),
     );

   $options = array(
    array(  'key'   => 1, 
                'value' => 'Test Kategorie 1'),
    array(  'key'   => 2,
                'value' => 'Test Kategorie 2'),
    array(  'key'   => 3,
                'value' => 'rene')
    );
于 2012-10-31T18:42:03.230 に答える