Javascript ajax调用后图像加载失败
我是新来的,我有一个问题,我找不到答案 我在Zend上用MVC运行了一个web应用程序。在客户端,我使用Jquery执行一个Ajax调用,以Json格式返回一些数据。使用javascript方法,我能够创建与结果对应的HTML代码。在这之前,一切都很顺利:-) 我的问题是,当我试图生成一个html组件(如需要URL的图像)时 这是我的密码:Javascript ajax调用后图像加载失败,javascript,jquery,html,ajax,zend-framework,Javascript,Jquery,Html,Ajax,Zend Framework,我是新来的,我有一个问题,我找不到答案 我在Zend上用MVC运行了一个web应用程序。在客户端,我使用Jquery执行一个Ajax调用,以Json格式返回一些数据。使用javascript方法,我能够创建与结果对应的HTML代码。在这之前,一切都很顺利:-) 我的问题是,当我试图生成一个html组件(如需要URL的图像)时 这是我的密码: <script type="text/javascript"> $.getJSON("/index/items", function(d
<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>
$.getJSON(“/index/items”),函数(数据){
var项目=[];
$。每个(数据、函数(键、值){
items.push(““+val.name+” ”);
});
$(“
”{
“id”:“结果列表”,
“类”:“myClass”,
html:items.join(“”)
}).appendTo(“#divResult”);
});
因此,我将图像src=“images/item.jpg
我的问题是找不到图像,我只得到'alt'标签->错误404
打开firebug时,我可以在URL上看到GET查询:
http://myWebsite/controller/images/item.jpg
当然,服务器在这里找不到它,因为我将图像放在了:
/project/public/images
文件夹
据你说:
请理解,所有这些对我来说都是新的,我会努力学习。处理这一问题的最佳方法是将其置于相对路径中 如果目录结构为:
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" />
这指定了图像文件相对于访问图像的文件的路径。我没有想到这一点……对不起。“相对于js文件”->相对于javascript正在执行的.html文件。