CakePHP多个scriptBlock JavaScript代码必须包含在一个HTML标记中< script>

qzlgjiam  于 2022-11-12  发布在  PHP
关注(0)|答案(1)|浏览(170)

我在我的代码中有多个来自不同页面的scriptBlock,但是它应该为所有用CakePHP scriptBlock编写的JavaScript创建一个<script>标记。
我下面的示例代码为每个标签创建单独的<script>标签。

echo $this->Html->scriptBlock(
    'jQuery(".investment-table tbody>tr").show()',
    ['block' => true]
);

echo $this->Html->scriptBlock(
    'jQuery(".investment-table tbody>tr").hide()',
    ['block' => true]
);

echo $this->Html->scriptBlock(
    'jQuery(".investment-table tbody>tr").remove()',
    ['block' => true]
);

请建议一个适当的方法来实现这一点从许多网页。

zz2j4svz

zz2j4svz1#

默认情况下,HtmlHelper::scriptBlock()为每个调用创建一个<script>元素。
不过,这应该不是问题,因为:

<script>jQuery(".investment-table tbody>tr").show()</script>
<script>jQuery(".investment-table tbody>tr").hide()</script>
<script>jQuery(".investment-table tbody>tr").remove()</script>

<script>
jQuery(".investment-table tbody>tr").show()
jQuery(".investment-table tbody>tr").hide()
jQuery(".investment-table tbody>tr").remove()
</script>

功能相同。
但是,为了便于讨论,如果出于某种原因需要将内容放入同一个元素中,则可以例如写入一个自定义块,然后在脚本块中输出该自定义块,沿着于以下内容:
第一个
另请参阅

*Cookbook〉视图〉使用视图块

相关问题