Cakephp - 更改验证错误div结构?

时间:2011-08-03 14:57:17

标签: cakephp

有没有办法改变验证错误div结构?我想在div之前插入一个图像。

每个错误都将与输入字段一起显示,因此我想在验证div之前插入左箭头图像。

目前我收到了这个:

<div class="input password required error">
<label for="StudentPassword1">Password</label>
<input type="password" name="data[Student][password1]" value="" id="StudentPassword1" class="form-error">
<div class="error-message">notempty</div>
</div>

我想:

<div class="input password required error">
<label for="StudentPassword1">Password</label>
<input type="password" name="data[Student][password1]" value="" id="StudentPassword1" class="form-error">
<img src='...' />
<div class="error-message">notempty</div>
</div>

你将如何做到这一点?我猜我必须修改核心?感谢

3 个答案:

答案 0 :(得分:5)

  

我猜我必须修改核心?

即可。如果您的应用需要更改Cake的核心,那么您可能会做错事。 Cake有很多事情要做,它会为你处理很多事情。这恰好是您可以根据自己的喜好自定义的内容之一。

使用FormHelper创建表单时,您可以specify default options for input(),其中一个选项包括the HTML structure and class used to wrap error messages

答案 1 :(得分:1)

我只想修改错误消息类的CSS以包含图像。

.error-message {
    background:url( path/to/img.png ) no-repeat top left;
    padding-left:40px; /* or whatever you need for the image to fit */
}

答案 2 :(得分:1)

<?php echo $this->Form->create('User', array('class'=>'form-horizontal', 
          'inputDefaults' => array('error' => array(
                'attributes' => array(
                     'wrap' => 'label', 'class' => 'text-error'
                 )
           ) )
)); ?>

这将使您自定义错误输出。