php - 如何将 CSS 类添加到 Zend_Form_Element_Select 选项

标签 php zend-framework zend-form zend-form-element css

我正在尝试将 CSS 类添加到 Zend_Form_Element_Select 选项,但我就是找不到实现它的方法。

期望的输出应该是这样的:

<select name="hey" id="hey">
    <option value="value1" style="parent">label1</option>
    <option value="value2" style="sibling">sublabel1</option>
    <option value="value3" style="sibling">sublabel2</option>
    <option value="value4" style="parent">label2</option>
    <option value="value5" style="sibling">sublabel3</option>
    <option value="value6" style="sibling">sublabel4</option>
</select>

但是我得到了这个:

<select name="hey" id="hey">
    <option value="value1">label1</option>
    <option value="value2">sublabel1</option>
    <option value="value3">sublabel2</option>
    <option value="value4">label2</option>
    <option value="value5">sublabel3</option>
    <option value="value6">sublabel4</option>
</select>

尽管我可以为选择元素本身设置样式,但我似乎无法将 CSS 类属性传递给选择元素中的任何选项。

我的代码:

$sel = new Zend_Form_Element_Select('hey');
$sel->setRequired(true)->setLabel('Select an Option:');
$sel->addMultiOption('value1', 'label1', array('class' => 'parent'))
    ->addMultiOption('value2', 'sublabel1', array('class' => 'sibling')) (etc...);

经过一番研究,我发现 Element_Select 没有为选择框的选项添加 CSS 样式的方法,只能为选择本身添加 CSS 样式。

那么,我该如何添加它们呢?我应该扩展 form_element_select 吗?或者自定义装饰器就足够了吗?谁能给我一个提示?我对此感到困惑。

提前致谢!

最佳答案

$htmlEgressCss='<style>';
$multiOptions = array("" => "All");
$resEg = $this->commonDB->getEgressTrunk();
while ($row = $resEg->fetch()) {
    if($row['IsActive']==0){
        $htmlEgressCss .= '.egressClass select, option[value="'.$row['TrunkInfoID'].'"] {color:red;font-weight:bold;}';
    }
    $multiOptions[$row['TrunkInfoID']] = $row['IngressTrunkName'];
}
$htmlEgressCss.='</style>';
$this->addElement(
        'select',
        'cmbEgressTrunk',
        array(
            'multiOptions' =>$multiOptions,
        )
    );
$html = '<form><div>'.$this->cmbEgressTrunk .'</div></form>'.$htmlEgressCss;

关于php - 如何将 CSS 类添加到 Zend_Form_Element_Select 选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2217671/

相关文章:

php - 删除除主要 style.css 之外的版本字符串查询

php - mysql group_concat 到 ZF 中的 JSON - 结果重复转义反斜杠

zend-framework - Zend 框架 : Post to different action then return to original action if fails validation AND keep form fields

php - zend framework 提交后的空表单

php - Zend_Form 和 Zend_Filter

zend-framework - 用于错误消息的Zend框架表单装饰器

php - 卡在 MYSQL mysqli 获取行中

php - SQL 和 PHP 中的分页不起作用

php - WooCommerce:在结帐时更改账单字段的 HTML 结构

php - Zend Framework - 直接使用 SQL