我正在使用 Pusher 构建 Notification,并且我将“路由”作为 JavaScript 变量接收到某个页面
现在我想将这个变量注入(inject)通知栏作为变量中确定的某个页面的链接, 我尝试制作 href 并使用 laravel url 方法将路由放入其中以从任何页面访问它。这是代码
channel.bind('App\\Events\\Councilcreated', function (data) {
var a = document.createElement('a');
a.setAttribute("href", "{{ url(".data.page.") }}");
});
问题是打印的 (data.page) 作为字符串而不是 (data.page) 变量的值
最佳答案
我建议您先将您的 URL 存储到一个 javascript 变量中,然后将您的数据添加到其中,然后将其设置为您的 href。如下所示。
var url = "{{ url() }}";
a.setAttribute("href", url+'/'+data.page);
如果你像你说的那样得到 htmlspecialchars () 错误然后像下面那样使用它
var url = "{!! url() !!}";
a.setAttribute("href", url+'/'+data.page);
为什么你不从 php 端传递完整的 url 并直接在这里使用它,如下所示。
//php
$this->page = url($page);
//javascipt
a.setAttribute("href", data.page);
关于javascript - 如何在 laravel blade 中动态打印 JavaScript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56214880/