我有一个带有文本字段的表单(在视图文件中):
<div class="form-group">
<?php echo form_input('email', '', [
'type' => 'text',
'id' => 'email',
'class' => 'form-control',
'value' => '',
'placeholder' => 'Email address',
]);
?>
<?php echo form_error('email'); ?>
</div>
在控制器中,我启用了错误消息:
$this->form_validation->set_error_delimiters('<p class="error">', '</p>');
我想添加课程&#34; has-error&#34;显示错误时显示<div class="form-group">
。我该怎么做?
答案 0 :(得分:1)
<div class="form-group <?php if(form_error('email')) echo 'has-error';?>">
或者如果您想通过jquery实现验证,可以添加此行
highlight: function(element) {
$(element).closest('.form-group').addClass('has-error');
},
unhighlight: function(element) {
$(element).closest('.form-group').removeClass('has-error');
},
errorElement: 'div',
errorClass: 'text-danger',
errorPlacement: function(error, element) {
if(element.parent('.input-group').length) {
error.insertAfter(element.parent());
} else if(element.parent('.blocks').length){
error.insertAfter(element.parent());
}else{
error.insertAfter(element);
}
},
答案 1 :(得分:0)
我通过以下几行获得了预期的效果:
$('.form-group').each(function(){
var error_msg = $(this).find(".error");
if (error_msg.length > 0) {
$(this).addClass('has-error');
}
});