简体   繁体   中英

Appending Laravel Blade from JQuery

I am trying to append Blade syntax from Laravel but can't get the browser to understand Blade. When I append the Blade syntax from my js file it output the code onto the page.

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

It would output this on to the page:

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

you can generate your view in your controller. and append it to your jQuery

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

And in your blade you can do something like this

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

I don't know if you are using an ajax call or simply a pageload so dont forget to wrap you script in document ready or ajax function

Laravel Blade is processing on server side by PHP. Not in your browser like JS. Therefore if you do like you did, you get normal text in your browser. So your server process PHP/Laravel code with Blade and provide for your browser static code with HTML, CSS and JS.

If it will help you, you can try put your blade code in appropriate *.blade.php file.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM