7

こんにちは、私は を使用しています。私のページにcodeigniterを追加したいのですが、multi select box

私は codeigniter ユーザーガイドの例を見ましたが、それがしているのは複数選択で値を設定することです。

このような

$options = array(
                  'small'  => 'Small Shirt',
                  'med'    => 'Medium Shirt',
                  'large'   => 'Large Shirt',
                  'xlarge' => 'Extra Large Shirt',
                );

$shirts_on_sale = array('small', 'large');

echo form_dropdown('shirts', $options, $shirts_on_sale);

このように作成されたこのマルチセレクトボックスで

<select name="shirts" multiple="multiple">
<option value="small" selected="selected">Small Shirt</option>
<option value="med">Medium Shirt</option>
<option value="large" selected="selected">Large Shirt</option>
<option value="xlarge">Extra Large Shirt</option>
</select>

配列で選択するオプションを指定する必要があります $shirts_on_saleが、私の場合は複数選択を作成したいのですがdont want selected options 、空の配列を渡そうとしました。しかし、それは機能していません

このような

$array = array();
echo form_dropdown('shirts', $substore_details, $array); 

アイテムが選択されていない複数選択を作成する方法。助けてください..............

4

6 に答える 6

11

form_multiselect() ヘルパーを使用する必要があります。

$options = array(
                  'small'  => 'Small Shirt',
                  'med'    => 'Medium Shirt',
                  'large'   => 'Large Shirt',
                  'xlarge' => 'Extra Large Shirt',
                );

echo form_multiselect('shirts', $options);
于 2011-10-19T12:19:34.720 に答える
1

私はすべての解決策を試しましたが、誰も私と一緒に働きませんでした(ヘルパーからのform_dropdown)また、multiple = "multiple"で通常の方法を試しました

それはcodeigniterの一般的な問題ですか??

エラーを更新 すると、誰もが配列cars[]としてhtml属性に名前を付けるのを忘れていました

<select **name="cars[]"** multiple="multiple">
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>

これは常に正常に動作します。

于 2016-03-22T07:56:12.573 に答える
1

私の頭に浮かぶ唯一のことは、複数の空の要素を持つ配列を使用することです:

$options = array(
                  'small'  => 'Small Shirt',
                  'med'    => 'Medium Shirt',
                  'large'   => 'Large Shirt',
                  'xlarge' => 'Extra Large Shirt',
                );

$array = array('','');
echo form_dropdown('shirts',$options, $array);

このコードは機能しますが、最も洗練されたものではありません。

アップデート:

これはさらに良いです、最初は覚えていませんでした!

echo form_multiselect('shirts',$options,'','');

出力:

<select name="shirts" multiple="multiple">
<option value="small">Small Shirt</option>
<option value="med">Medium Shirt</option>
<option value="large">Large Shirt</option>
<option value="xlarge">Extra Large Shirt</option>
</select>
于 2011-10-19T12:07:31.257 に答える
0

古いバージョンの codeigniter にはform_multiselect(). 次のコードが機能するはずです

$array = array();
echo form_dropdown('shirts', $substore_details, $array, 'multiple'); 
于 2012-02-04T14:03:22.017 に答える