CodeIgniter - 在下拉列表中向选项添加类

时间:2012-10-15 17:02:39

标签: forms codeigniter

我正在使用jQuery.chained,因此当您从下拉列表中选择一个国家/地区时,它会过滤省/州下拉列表。但是,它要求每个<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>添加一个类。我想我可能需要一个自定义助手,但我不知道如何创建一个。我是编码的新手。谁能帮我?感谢。

2 个答案:

答案 0 :(得分:2)

使用

echo form_dropdown('province', $options, $province,'class="someclass"');

答案 1 :(得分:1)

您可以扩展默认的form_helper,创建自定义帮助程序或通过JavaScript添加类。

已创建CodeIgniter,因此您可以轻松地覆盖现有代码

创建自定义助手

  • 打开“codeigniter / helpers / form_helper.php”
  • 找到“ form_dropdown ”功能,将其复制到新文件中并另存为“application / helpers / MY_form_helper.php”
  • 对下拉列表的原始方法进行任何更改,并使用相同的名称保存 form_dropdown

您可以像使用旧助手一样加载/使用新助手。

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

另一个选项是在调用jQuery插件之前通过JavaScript添加类,具体取决于您可能更容易找到此选项的代码技能级别。

CodeIgniter的用户指南是information

的一个非常有用的来源

希望如果你很难写出你已经尝试过的实际功能,我可能会帮助你,另一个选择就是从另一个基于CodeIgniter的应用程序中获取帮助,或者寻找一个Spark。我知道CI-Bonfire有一个非常有用的地址助手,我很确定我也看到了Spark。