2016-05-07 22 views
0

Ich versuche, Blade-Syntax von Laravel anhängen, aber kann nicht den Browser Blade verstehen. Wenn ich die Blade-Syntax aus meiner js-Datei anhefte, wird der Code auf der Seite ausgegeben.Anfügen Laravel Blade von JQuery

// this is my code.. 
$("#"+Current_box).append("@if ($errors->has('testing'))<span class='help-block'><strong>{{ $errors->first('testing') }}</strong></span>@endif") 

Es wäre Ausgang dieses auf die Seite:

@if ($errors->has('testing')) 
{{ $errors->first('testing') }} 
@endif 
+1

Sie nicht "den Browser zu verstehen, Klinge". Sie rendern die Blade-Vorlage und geben das gerenderte HTML zurück. – undefined

Antwort

0

Laravel Blade ist die Verarbeitung auf Server-Seite von PHP. Nicht in Ihrem Browser wie JS. Daher, wenn Sie wie Sie haben, erhalten Sie normalen Text in Ihrem Browser. Ihr Server verarbeitet also PHP/Laravel Code mit Blade und stellt Ihrem Browser statischen Code mit HTML, CSS und JS zur Verfügung.

Wenn es Ihnen hilft, können Sie versuchen, Ihren Blade-Code in entsprechende * .blade.php Datei.

2

können Sie Ihre Ansicht in Ihrem Controller generieren. und fügen Sie es zu Ihrem jQuery

//blade 
$html = view('someView')->render(); 
retrun json_encode($html) 

Und in Ihrer Klinge können Sie tun so etwas wie dieses

<script type="text/javascript"> 
@if(isset($html)) 
$("#"+Current_box).append({{$html}}) 
@endif 

Ich weiß nicht, ob Sie einen Ajax-Aufruf verwenden oder einfach ein Pageload so vergessen Sie nicht zu wickeln Sie Skript in Dokument bereit oder Ajax-Funktion