我是新来的,我有一个问题,我找不到答案......
我在Zend上使用MVC运行了一个Web应用程序。在客户端,使用Jquery我执行Ajax调用,以Json格式返回一些数据。使用javascript方法,我能够创建与结果相对应的HTML代码。直到这里,一切都运作良好: - )
我的问题是当我尝试生成一个html组件,比如Image需要一个URL。
这是我的代码:
<script type="text/javascript">
$.getJSON("/index/items", function(data) {
var items = [];
$.each(data, function(key, val) {
items.push('<li id="resultList-' + val.id + '" class="resultList"><img src="images/item.jpg" alt="img">' + val.name + '</li>');
});
$('<ul/>', {
'id': 'resultList',
'class': 'myClass',
html: items.join('')
}).appendTo('#divResult');
});
</script>
<div id="content">
<div id="divResult"></div>
</div>
所以我输入了图片src="images/item.jpg
我的问题是找不到图片,我只获得'alt'标签 - &gt;错误404。
当我打开firebug时,我可以在URL上看到GET查询:
http://myWebsite/controller/images/item.jpg
当然,服务器在这里找不到,因为我将图像放在:
/project/public/images
文件夹...
据你说:
请理解这一切对我来说都是新的,我会尝试学习。
答案 0 :(得分:0)
处理此问题的最佳方法是将其置于相对路径中。
示例目录结构是:
project/
html/
htmlfile.html //references the image file
js/
jsfile.js //references the image file
images/
item.png
然后你需要使用
<img src="../images/item.jpg" alt="img" />
指定图像文件相对于访问图像的文件的路径。