PHP Laravel NGINX html css Bootstrap Python Symfony Apache Windows linux jquery Django ASP vanilla Slim vagrant docker Homestead MySQL Redis Git SVN ssh Root vim PhpStorm Pycharm sass less PHP Laravel android html css Vue Angular React NGINX html css Javascript

Laravel如何在Blade模板中传值给Javascript

原创

原创不易 ~ 转载请注明出处哦

有的时候,当我们从后台拉取出数据后,想传递给前端Javascript进行数据填充或者操作,我们应该怎么操作呢?

其实前端获取数据的办法无非就两种:

  1. 使用AJAX从后端获取数据
  2. 后端获取数据后传递给前端页面(放置于html元素中或直接赋值给js

第一种方法我们今天不做讲解,我们主要来关注第二种方法。

第二种方法将数据放置于HTML元素中其实非常简单,我们今天要讲的是如何在Laravel中直接将PHP变量传递给Javascript

首先我们需要熟悉Blade模板的概念,对于采用了Blade模板的View,实际上都会经过编译一遍的。
我们在View中,可以直接使用如下方法进行js的赋值:

<script>    
    var tmpNumber = {{ $number }};    
    var tmpString = '{{ $string }}';    
</script>

由于后台PHP语言在页面请求时会首先被执行,而Javascript会在页面加载时才会运行,所以以上的代码片段可以保证我们js中的变量正常被赋值。

需要注意的是,如果你的PHP变量为数字,那么可以不需要加上''(引号),而如果你的变量是字符串(String),那么你需要使用''或`` (backtick),前者为单行字符串,后者为多行(multi-line)字符串。


正在加载验证码......
请先完成验证