4

我正在为我的 HTML 使用 Laravel Blade 格式,并将多个 PHP 变量传递给 JavaScript 函数。问题是传递给 JavaScript 函数的变量可能有特殊字符。

我希望 JavaScript 函数如下所示:

jsFunction("argument1","argument2","argument3")

我得到什么:

jsFunction('argument1','argument2','argument3')

我的刀片格式代码是:

<a href="#" onclick="displayBannerInvoice('{{$bannerProperty->property_id}}','{{ $bannerProperty->id }}','{{$bannerProperty->end_date}}','{{$bannerProperty->no_of_days}}','{{$bannerProperty->total}}','{{$bannerProperty->vat_percentage}}')"></a>
4

4 回答 4

6

最好的办法是不要重新发明轮子并尝试搜索:)

github上已经有一个包https://github.com/laracasts/PHP-Vars-To-Js-Transformer

它完全符合您的要求。它适用于 Laravel 5 和 Laravel 4。

于 2015-03-09T08:36:46.937 回答
1

这是我如何做的一个例子。我有一个带有调用 JavaScript 函数的更新按钮的表单。

{!! Form::button('Update', array('class' => 'btn btn-success', 'onClick' => 'updateTeamName(' . $team_id . ')')) !!}

我将 $team_id 变量(通过控制器方法传递给视图)传递给 JavaScript 函数。

希望这可以帮助。

于 2017-11-20T03:09:11.067 回答
1

您可以使用以下语法在 laravel Blade 中显示 php 变量:

{!! $someVar !!}

例子:

console.log( {!! $someVar !!} );
于 2017-02-28T09:27:52.670 回答
0

我尝试了很多语法,最后解决了这个问题。这是你的答案:

jsFunction({{"$var1"}}{{","}}{{"$var2"}})
于 2020-01-09T16:56:25.627 回答