0

我正在使用 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>. 我假设我可能需要一个自定义助手,但我不知道如何创建一个。我是编码新手。谁能帮我?谢谢。

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');

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

CodeIgniter 的用户指南是一个非常有用的信息来源

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

于 2012-10-15T18:01:11.680 回答