2014-10-27 86 views
-1

我在显示JSON图像时遇到问题。我的问题特别是我有图像存储在JSON对象中,但是缺少指向这些图像的路径。当图像路径丢失时从JSON对象显示图像

我的方式来显示图像如下:

function populateMenuItems(menuitems){ 

     // function argument is a JSON object 

     var container = $('.container'); 

     // iterating through JSON object 
     for(var i=0; i<menuitems.length; i++){ 

      var menuItem = $('.menu-item-template').html(); 

      menuItem = menuItem.replace(/MENUITEM/g,menuitems[i].name); 

      var menuItem = $(menuItem); 

      // attempting to add images to src attribute with a path 
      menuItem.find('img').attr({ 
       alt : menuitems[i].name, 
       // the actual image 
       src : menuitems[i].filename 
      }); 

      container.append(menuItem); 

     } 


    } 

这又如何解决?它试图分配相对路径到我的项目文件夹,但似乎没有解决问题。我正在使用JavaScript来解析我的JSON对象。

在试图显示图像,我在Chrome中得到的错误是:

GET file:///C:/Users:/Documents/App/html/sample_image.jpg net::ERR_FILE_NOT_FOUND 
+0

为什么不使用[相对路径](http://en.wikipedia.org/wiki/Path_%28computing%29)? – 2014-10-27 08:40:27

+0

我不明白我在做什么与我的相对路径错误。我尝试在src属性中添加'../images/ ',并且不显示任何图像。 – user1841702 2014-10-27 10:08:01

+0

请让我看看你的图片和页面的绝对路径。它适用于两者。看[这](http://jsfiddle.net/a825wqLe/1/)小提琴。最好的方法是查看你的调试工具(例如Firebug)并检查img标签。 – 2014-10-27 12:32:37

回答

0

看来问题用“的菜单项”,更好的方法是为扬社说,使用相对路径。另一个不好的方法是添加新的“替换”语句来替换相对路径的路径。

最后,强烈建议在网站中使用相对路径。