我需要在页面上显示从数据库生成的一些产品图像。我用的是ZF2。
我的数据库表包含src
列(此列中的数据类似于:img/products/test.jpg
),表示img标记src
。
当我从控制器返回产品对象到查看脚本时,我可以轻松地在.phtml文件中生成图像,img标签是这样生成的:
echo '<img src="' . $this->basePath($product->src) . '">';
通常有效。
现在,我正在修改相同的代码以通过AJAX请求使用jQuery。所以,我需要在.js文件中以某种方式生成img src
{。1}}很容易在.js中生成,但img/products/test.jpg
部分呢?
答案 0 :(得分:0)
您似乎期望使用basePath()
视图帮助程序的完整网址。这可能不是你想要的。但如果是这种情况,那么您必须配置为使视图助手按照您在module.config.php
中的预期工作,如下所示
'view_manager' => [
'base_path' => 'http://yoursite.com/', // <-- replace with your website
'template_path_stack' => [
__DIR__ . '/../view',
],
],
如果您已配置此配置,那么您将获得包含您的域名的网址。
$this->basePath($product->src);
所以上面会输出
http://yoursite.com/img/products/test.jpg
还有另一个视图帮助程序,您可以将其用于不需要像basePath()
这样的配置的相同目的。那是
$this->serverUrl(); // Outputs http://yoursite.com
但请记住,此视图助手没有尾部斜杠/
。因此,您需要手动将其置于以下位置。请注意/
那里。
$this->serverUrl('/path'); // Outputs http://yoursite.com/path
答案 1 :(得分:0)
.phtml文件:
<img src="' . $this->basePath($product->src) . '">
.js文件:
<img src=\"/"+this['src']+"\">