使用CakePHP生成Javascript视图块
Generating Javascript view block with CakePHP
考虑这样的URL:
http://site.com/upload/qeSJGs,ZWURb4,qdMMTZ,yM62UX,RlwwWT,ecw7s1
我需要将由,
分隔的所有6个字符串放入一个Javascript数组中,并插入到我的页面中。这是我的控制器操作:
public function upload($imageHashes) {
$this->set('title_for_layout', 'Uploads successful');
$this->set('imageHashes', explode(',', $imageHashes);
$this->layout = 'complex';
}
在我的视图文件中,我有这个:
<?php echo $this->Html->scriptBlock('', array('inline' => false)); ?>
现在,用scriptBlock
方法编写所有的Javascript会非常混乱,但我不能包含外部Javascript文件,因为内容会根据URL而更改。有没有一种我不知道的更简单的方法可以做到这一点?
获取您的imageHashes数组并对其进行json_encode。然后,对于您的脚本块,您可以执行类似的操作
echo $this->Html->scriptBlock('var jsArray = ' . $json_encoded_array . ';', array('inline' => false));
对于Cakephp 2.x和Cakephp 3.x,您可以使用:
在视图或模板文件中:
<?php $this->Html->scriptStart(array('block' => 'scriptBottom', 'inline' => false)); ?>
$(document).ready(function(){
console.log('OK');
});
<?php $this->Html->scriptEnd(); ?>
在布局文件中:
<?= $this->fetch('scriptBottom'); ?>
相关文章:
- 如何使用javascript从主svg对象动态创建svg视图框
- 如何包含特定于每个视图angularjs的javascript文件
- 如何在Ionic Android中将Javascript注入到web视图中
- 如何在MVC5中ajax调用的部分视图中引用外部javascript
- 在CodeIgniter视图中将Javascript或jQuery代码作为PHP文件编写可以吗
- 我应该将MVC视图特定的javascript文件放在哪个文件夹中
- 树视图javascript的反向级别
- node.js/javascript/couchdb视图到关联数组似乎不起作用
- 将c#视图模型转换为javascript模型时转义HTML标记
- 如何访问Web2py'中python代码中的JavaScript变量;s视图
- Rails:将资产管道中的纯javascript限制为特定视图
- 使用javascript在MVC视图中解析.net JSON字符串
- Android网络视图:JavaScript在触摸时停止
- 如何在mvc3视图javascript中查找当前请求是否为ajax
- MVC视图Javascript变量
- MVC4 部分视图 JavaScript 捆绑问题
- IE9 兼容性视图 Javascript 问题
- playframework从视图javascript调用Model方法
- IOS:Web视图javascript禁用
- IE 11和Chrome中的网格视图Javascript错误