我正在 Django 的帮助下进行服务器端渲染。在我的 django 模板中,我循环遍历从数据库获取的所有值。在jquery中,当选择单个值时,JS给我从数据库获取的所有值,但我只想要选定的值
View .py
def theme(request):
context={}
context['All']=Theme.objects.all().count()
for t in ThemeCategory.objects.all():
context[t.categoryName]= t.theme_set.count()
context=collections.OrderedDict(sorted(context.items()))
return render(request,'theme-list.html',{'category_name':context})
在模板中
<ul class="pick-tags" >
{% for category_name,count in category_name.items %}
<li id="item_cat">
<span id="item_cat_name">{{ category_name }}</span>
</li>
{% endfor %}
</ul>
在 jquery 中我选择所需的值
$('li#item_cat').on('click', function () {
alert($('span#item_cat_name').text())
})
但是它不是给我一个单一的值,而是从数据库获得的所有值。
点击 <li>
时如何只获取一个值
任何获得选定值的帮助都会有帮助
最佳答案
首先,每个HTML元素的id应该是唯一的。并且您正在创建多个具有相同 id 的 li
和 span
元素。确保它是唯一的,以防止出现不需要的错误。如果需要,最好使用类和数据属性。
其次,您需要获取所选元素的文本,而不是任何元素,因此您需要使用 this
:
$(this).find('span').text()
关于javascript - Django-Jquery 循环遍历所有选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38628873/