2016-02-11 149 views
1

我在一个经典的场景是动态的CSS类,我想基于wheter已经发生了错误更改CSS类。如下所示,哪里有错误应该相应地改变。产生laravel刀片

<div class="form-group has-error"> 

该项目是在Laravel,我们主要是想在Blade截至目前做的一切,我们提出了以下解决方案,它的工作原理,但并不漂亮或直观的模样,所以这个问题是,有没有更好的方法来做到这一点?

<div class="form-group 
@if($errors->has('email')) 
     has-error 
@endif 
     "> 

回答

8

尝试,如果其他条件手短代码:

<form class="form-group {{ $errors->has('email') ? 'has-error' : '' }}"> 

这似乎整洁。

即使是Laravel 5.2 auth表单也是这样完成的。

+0

整洁地尝试了一个类似的应用,但编译器不停地呕吐着我,当我到办公室时会尝试这个版本,谢谢这是在漂亮的范围内 –

2

这就是我所做的。你也可以这样做的:

@if($errors->has('email')) 
    <div class="form-group has-error"> 
     //You can also edit classes of other elements 
    </div> 
@else 
    <div class="form-group"></div> 
@endif 
+0

也得出同样的结论,我想出了,但缺少NG-像AngularJS这样的类。 –

0

你可以利用阵列来存储类名

@php 
$formGroupClasses = ['form-group']; 

if ($errors->has('email')) { 
    $formGroupClasses[] = 'has-error'; 
} 
@endphp 

,然后爆他们创建一个字符串

<form class="{{ implode(' ', $formGroupClasses) }}">