【问题标题】:Prevent Blade from displaying something if JS condition meets如果 JS 条件满足,防止 Blade 显示某些内容
【发布时间】:2019-06-27 13:44:08
【问题描述】:

它既简单又复杂 :) 我知道服务器客户端的东西,但是这个让我挂了'

我想要实现的目标:仅在尚未显示 5 次时才显示以下代码。

@if(...)
<div class="goal">
   {{ $variable }}
</div>
@endif

所以我想实现类似的目标

<script> if($('.goal').length < 5) { </script>
    @if(...)
<div class="goal">
   {{ $variable }}
</div>
@endif
<script> } </script>

但是好吧..它不起作用^^“还有其他方法吗?每次都会附加无限滚动,所以我尝试使用本地存储但同样的问题,无法检查if条件。 非常感谢您的帮助 问候 毁灭

编辑:使用 jquery.load() 函数来追加,所以用它发送数据几乎不是我想的方式,因为我不想将它附加到 url。我应该在负载的回调中调用 ajax 吗?

【问题讨论】:

  • 记住 Blade 是 PHP 的,所以它在发送到浏览器之前会被处理,所以 javascript 对它没有任何影响。您必须查看一种 PHP 方法,或者在页面加载后使用 Ajax 加载/隐藏。
  • 你应该做 AJAX 调用,因为刀片是服务器渲染的输出。

标签: javascript php laravel syntax laravel-blade


【解决方案1】:

尝试使用直接访问您的变量而不是类,因为类不返回内容的长度,

@if(strlen($variable) > 5)
   //code goes here
@endif

【讨论】:

    猜你喜欢
    • 2017-08-30
    • 1970-01-01
    • 1970-01-01
    • 2015-10-18
    • 1970-01-01
    • 1970-01-01
    • 2019-03-21
    • 1970-01-01
    • 2021-06-17
    相关资源
    最近更新 更多