【问题标题】:Hidden input isn't hidden in Laravel blade templateLaravel 刀片模板中不隐藏隐藏的输入
【发布时间】:2016-10-14 00:49:13
【问题描述】:

我正在尝试进行隐藏输入并在刀片模板中设置一些值,但它没有隐藏并且在页面上可见。这是字段

{{ Form::hidden('price', '<?php echo $item['price'] * $item['quantity'];?>') }}

我尝试过不使用&lt;?php ?&gt; 标签,因为当我在刀片模板中阅读{{ }} 中的所有内容时,读取的内容都像php .. 所以这个

{{ Form::hidden('price', '$item['price'] * $item['quantity']') }}

抛出错误

'语法错误,意外的'价格'(T_STRING)'

【问题讨论】:

  • 得到了这个'syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)'

标签: php laravel-4 laravel-blade


【解决方案1】:

您的问题是'$item['price'] * $item['quantity']'。

  1. 您在单引号中包含单引号,但没有对其进行转义,这样会导致错误
  2. PHP 会将其计算为字符串,而不是您想要的表达式。无需将此表达式用引号括起来。

所以在 Blade 4 中,你会想要:

{{ Form::hidden('price', $item['price'] * $item['quantity']) }}

仅限刀片版本 5

在 Blade 5 中,{!! !!} 应该用于 HTML 代码。

{!! Form::hidden('price', $item['price'] * $item['quantity']) !!}

【讨论】:

  • 它在页面上可见..这是我在页面上看到的{!! Form::hidden('price', $item['price'] * $item['quantity']) !!}
  • 哦,别管最后一句,你用的是版本4。{{ }} on 4 相当于{!! !!} on 5。
  • 最后。感谢您的帮助!
【解决方案2】:

试试这个方法

{{ Form::hidden('price', '$item["price"] * $item["quantity"]') }}

引号和双引号可能是解决方案

【讨论】:

  • 像这样我在页面上有文本字段,并在查看源这个&lt;input name="price" type="hidden" value="$item[&amp;quot;price&amp;quot;] * $item[&amp;quot;quantity&amp;quot;]"&gt;
  • 哦.. 没想到,@Devon 一定是对的
猜你喜欢
  • 2015-05-13
  • 2020-08-22
  • 2017-09-27
  • 2013-11-17
  • 1970-01-01
  • 2017-04-20
  • 2014-09-29
  • 2014-06-22
  • 2011-12-06
相关资源
最近更新 更多