
后台是用 Django 写的,我想模仿豆瓣电影写一个页面,把电影海报和名字、评分等信息放上去,以下是代码
{% for film in movie %} <div class='movie'> <li id="film_path" hidden="hidden">{{ film.image_local_path }}</li> // film.image_local_path 是从数据库里拉出来的图片地址, // 用了 Django 的 load staticfiles,数据长这样 "{% static 'image/26235346.jpg' %}", <li><img id="img" alt="图片不见了" /></li> <li>{{ film.name }}</li> </div> {% empty %} <p>这里没有东西</p> {% endfor %} 以下为 Javascript 代码,主要逻辑是找到 Id 为 film_path 的 li 标签文本节点值,然后赋值给 Id 为 img 的 img 标签,把图片加载到页面上。但是现在遇到一个问题,把节点值当做参数传入后,图片未加载。
function changeImgSrc() { var film_img_li = document.getElementById("film_path"); var film_path_childnode_nodeValue = film_img_li.childNodes[0].nodeValue; var set_img_path = document.getElementById("img"); set_img_path.setAttribute("src", film_path_childnode_nodeValue); 当我把地址直接当做参数传入后,比如下面这样是可以实现想要的效果的,不知道问题出在哪了?
set_img_path.setAttribute("src", "{% static 'image/26235346.jpg' %}"); 1 crystom 2019-12-11 01:25:29 +08:00 id 写在循环里重复了,应该是页面唯一才能找到 |