我想使用CakePHP将评级星插入我的页面。图像的路径在javascript中,如下所示。但是,图像没有显示出来。
$.fn.jRating = function(op) {
var defaults = {
/** String vars **/
bigStarsPath : '../img/icons/stars.png' , // path of the icon stars.png
smallStarsPath : '../img/icons/small.png', // path of the icon small.png
phpPath : 'app/jRating.php', // path of the php file jRating.php
type : 'big', // can be set to 'small' or 'big'
我已尝试使用<?php echo $this->webroot; ?>img/icons/stars.png
。但没有运气。任何人都可以帮助我。
答案 0 :(得分:2)
我在布局中总是做的是放一个像这样的javascript变量:
<script type="text/javascript">
var root = '<?php echo $this->Html->url('/'); ?>';
</script>
通过这种方式,您始终可以参考项目的根目录。
然后您的代码将是:
$.fn.jRating = function(op) {
var defaults = {
/** String vars **/
bigStarsPath : root+'img/icons/stars.png' , // path of the icon stars.png
smallStarsPath : root+'img/icons/small.png', // path of the icon small.png
phpPath : 'app/jRating.php', // path of the php file jRating.php
type : 'big', // can be set to 'small' or 'big'
我在这里看到的问题是phpPath指向app /我认为是不可见的,因为项目的根目录设置为app / webroot /。
因此,将文件jRating.php移动到app / webroot /或将逻辑移动到控制器的操作中。
答案 1 :(得分:0)
请改用$this->Html->image()
。该函数检索并添加路由到app/webroot/img
中的图像。
文档:http://book.cakephp.org/2.0/en/core-libraries/helpers/html.html#HtmlHelper::image
答案 2 :(得分:0)
使用html帮助器,然后将URL设置如下:
../folder-name-in-webroot/file-name