数据库具有以下字段:id,标题,预览,titleWork,fullDescription,每一行。 单击预览后,我找不到显示完整数据库行的方法。
我运行循环以显示预览列表内容。 当我单击列表中的图像时,console.log始终是数据库的最后一个元素,但是我需要单击该元素的ID才能显示其他数据。 单击后如何获取单击的元素的ID?
{% for listing in listings %}
<img class="carousel" id="{{ listing.id}}" onclick="idNumber()" src="{{
listing.preview.url }}" alt="{{ listing.titleWork }}" title="{{
listing.titleWork }}">
<script>
function idNumber(){
idNumb_ = document.getElementById('{{ listing.id | safe}}')
console.log(idNumb_);
}
</script>
{% endfor %}
答案 0 :(得分:0)
尝试这种方式:
{% for listing in listings %}
<img class="carousel"
id="{{ listing.id}}"
onclick="idNumber({{ listing.id}})"
src="{{ listing.preview.url }}"
alt="{{ listing.titleWork }}"
title="{{ listing.titleWork }}">
{% endfor %}
<script>
function idNumber(imgId){
var idNumb_ = document.getElementById(imgId)
console.log(idNumb_);
}
</script>
您的方法无效,因为您创建了len(listings)
个函数的idNumber
个副本,而上一个副本被下一个副本覆盖了