2016-02-11 146 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) }}">