【问题标题】:Change input element class on form_error?更改 form_error 上的输入元素类?
【发布时间】:2013-02-22 10:53:01
【问题描述】:

所以,当我在该元素上收到 form_error 时,我想更改该输入元素的样式。

在我的控制器中,我拥有所有的 form_validation 规则,以及每个 inputelement 属性

        if ($this->form_validation->run() == FALSE)
    {
        $data['username'] = array(
            'name' => 'username',
            'id' => 'username'
            );

        $data['password'] = array(
            'type' => 'password',
            'name' => 'password',
            'id' => 'password'
            );
    }

在我看来,我正在将它们打印出来。

            <li>
                <label for="username" class="bold">Username</label>
                <span class="input-prepend">$</span>
                <?php echo form_input($username); ?>
            </li>

所以,我需要一种简单的方法来更改出现表单错误的对应元素上的类。有什么简单的方法可以做到这一点吗?

如果我解释不好,请告诉我 :) 谢谢。

【问题讨论】:

    标签: php codeigniter validation


    【解决方案1】:

    你可以做这样的事情......

    <li<?php echo (form_error('username') == '') ? '' : ' class="yes_error"'; ?>>
        <label for="username" class="bold">Username</label>
        <span class="input-prepend">$</span>
        <?php echo form_input($username); ?>
    </li>
    

    用户名错误时输出

    <li class="yes_error">
        <label for="username" class="bold">Username</label>
        <span class="input-prepend">$</span>
        ....
    </li>
    

    然后设置样式...

    .yes_error {
        color: #FF0000;
        background: ...
        .....
    }
    

    【讨论】:

    • @Zacharias,很高兴它能帮助你。
    • 只是一个简单的问题;这是最简单的方法吗?假设我有 10 个输入元素。那我必须写10个if子句吗?或者创建一个函数?
    • 是的,你可以创建一个辅助函数check_error($error_data) { if(empty($error_data) { return; } else { return ' class="yes_error"'; } },在表单视图中你可以这样做&lt;li&lt;?php echo check_error(form_error('username')); ?&gt;&gt;&lt;/li&gt;。但这并没有太大帮助。
    【解决方案2】:
    <?php echo form_input($username, '', 'HERE your Css styles like style="" and javascript'); ?>
    

    你为什么不看说明书? http://ellislab.com/codeigniter/user-guide/helpers/form_helper.html

    【讨论】:

      猜你喜欢
      • 2015-06-12
      • 2020-07-18
      • 2012-11-29
      • 1970-01-01
      • 1970-01-01
      • 2013-12-13
      • 2023-04-09
      • 1970-01-01
      • 2013-09-23
      相关资源
      最近更新 更多