我有这个:
var y = $(document.getElementById('{{ forloop.counter }}')).text();
console.log(y)
在我的控制台中,我有这个:
My text1
var y = $(document.getElementById('1')).text();
console.log(y)
My text2
var y = $(document.getElementById('2')).text();
console.log(y)
我如何只获得My text
,而又没有功能。
尝试过.textContext
,但控制台显示元素undefined
UPD
<div class="span4 collapse-group">
<div class="text-center">
<p><a class="btn btn-md btn-outline-dark btn-square" href="#">Check »</a></p>
</div>
<div class="collapse">
<div class="card card-body">
{{text}}
<script>
$(".card").each(function(i,e){
var text = $(e).text();
console.log(text);
});
答案 0 :(得分:1)
我想你的循环是:
{% for item in list %}
<div id="item_{{forloop.counter}}" class="item_list">{{ item.text }}</div>
{% endif %}
在js中,您可以将唯一类item_list
定位为对象,并使用each()
对其进行迭代:
$(".item_list").each(function(i,e){
var text = $(e).text();
if(!text || text == undefined){
console.log('empty');
}
# //further processes
});
答案 1 :(得分:0)
您正在尝试获取element的文本错误。您可以执行$('#2').text()
或document.getElementById('1').textContent
.text()
方法获取匹配元素集中每个元素的组合文本内容(包括它们的后代),或设置匹配元素的文本内容。
textContent
属性设置或返回指定节点及其所有后代的文本内容。
var y = $('#1').text();
console.log(y)
var y = $('#2').text();
console.log(y)
var y = document.getElementById('1').textContent;
console.log(y)
var y = document.getElementById('2').textContent;
console.log(y)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="1">Div 1</div>
<div id="2">Div 2</div>