0

私はjQuery.chainedを使用しているので、ドロップダウンから国を選択すると、Province/Stateドロップダウンがフィルタリングされます。<option>ただし、それぞれに対応する国のクラス名が必要です。

これは私が今まで持っているものです

$options = array(
    //Canada
    "AB" => "Alberta",
    "BC" => "British Columbia",
    "MB" => "Manitoba",
    //etc...

    //United States
    "AL" => "Alabama",
    "AK" => "Alaska",
    "AZ" => "Arizona",
    //etc...
);

echo form_dropdown('province', $options, $province);

これは私に与えます

<option value="AB" selected="selected">Alberta</option>
<option value="BC">British Columbia</option>
<option value="MB">Manitoba</option>

<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>

しかし、私が必要としているのは

<option value="AB" class="canada" selected="selected">Alberta</option>
<option value="BC" class="canada">British Columbia</option>
<option value="MB" class="canada">Manitoba</option>

<option value="AL" class="us">Alabama</option>
<option value="AK" class="us">Alaska</option>
<option value="AZ" class="us">Arizona</option>

では、それぞれにクラスを追加するにはどうすればよいでしょうか<option>。おそらくカスタムヘルパーが必要だと思いますが、作成方法がわかりません。私はコーディングに不慣れです。誰か助けてもらえますか?ありがとう。

4

2 に答える 2

2

使用する

echo form_dropdown('province', $options, $province,'class="someclass"');
于 2012-10-15T17:14:52.667 に答える
1

デフォルトのform_helperを拡張したり、カスタムヘルパーを作成したり、JavaScriptを介してクラスを追加したりできます。

CodeIgniterが作成されたため、既存のコードを非常に簡単にオーバーライドできます

カスタムヘルパーを作成するには

  • 「codeigniter/helpers/form_helper.php」を開きます
  • 「 form_dropdown 」関数を見つけて、それを新しいファイルにコピーし、「application / helpers/MY_form_helper.php」として保存します。
  • ドロップダウンの元のメソッドに変更を加え、関数form_dropdownに同じ名前を使用して保存します

古いヘルパーを使用したのとまったく同じ方法で、新しいヘルパーをロード/使用します。

$this->load->helper('form');

もう1つのオプションは、コードスキルのレベルに応じて、jQueryプラグインを呼び出す前にJavaScriptを介してクラスを追加することです。これは、このオプションの方が簡単な場合があります。

CodeIgniterのユーザーガイドは非常に便利な情報源です

すでに試したことを投稿する実際の関数を書くのに苦労している場合に役立つことを願っています。おそらくそれを手伝うことができます。他のオプションは、別のCodeIgniterベースのアプリケーションからヘルパーを取得するか、Sparkを探すことです。CI-Bonfireには非常に便利なアドレスヘルパーがあり、Sparkも見たと確信しています。

于 2012-10-15T18:01:11.680 に答える