Ajax中的循环JavaScript
我遵循Django代码,该代码根据我在银行中的变量数量动态生成卡。对于每个卡,它通过ajax代码使用API中的数据。然而,我的ajax代码并不是每次循环都被调用。它只被调用一次。我所能做的是错误的,因为我需要在HTML的每个循环中调用ajaxAjax中的循环JavaScript,javascript,django,ajax,Javascript,Django,Ajax,我遵循Django代码,该代码根据我在银行中的变量数量动态生成卡。对于每个卡,它通过ajax代码使用API中的数据。然而,我的ajax代码并不是每次循环都被调用。它只被调用一次。我所能做的是错误的,因为我需要在HTML的每个循环中调用ajax {% block content %} <div id="auto" class="row"> {% for row in list %} {% if row.state == 1 %} <
{% block content %}
<div id="auto" class="row">
{% for row in list %}
{% if row.state == 1 %}
<div class="col-xs-6 col-md-4">
<div class="card">
<h5 class="card-header">{{row.description}} - Temperatura Atual (˚C)</h5>
<!--<img class="card-img-top" src="{% static 'img/gauge.png' %}" width="100" height="200" alt="Card image cap">!-->
<canvas id="myChart-{{ forloop.counter }}" class="piechart"></canvas>
<script>
var rowId = {{ row.id }}
console.log(rowId);
readTempDinamic(rowId);
//refresh();
</script>
<p class="text-center font-weight-bold" style="font-size: 0.7rem"><span id="datetime"></span></p>
<a href="{% url 'row_details' pk=row.pk %}" class="btn botao-detalhar btn-sm">Show</a>
</div>
</div>
{% endif %}
{% endfor %}
</div>
{% endblock content %}
function readTempDinamic(rowId) {
var endpointTemp = '/api/weatherData/getSensor/1/' + rowId + '/'
console.log(endpointTemp);
/* ############################################################################# */
$.ajax({
method: "GET",
url: endpointTemp,
success: function(data){
var row = []
var value = []
var read_data = []
row = data.row
value = data.value
read_data = data.read_date
generateGaugeCharts(row[0], read_data[0], value[0])
},
error: function(error_data){
console.log("error")
console.log(error_data)
}
})
/* ############################################################################# */
}
{%block content%}
{列表%中的行的%1}
{%if row.state==1%}
{{row.description}}-温度温度(˚C)
var rowId={row.id}
console.log(rowId);
readTempDinamic(rowId);
//刷新();
{%endif%}
{%endfor%}
{%endblock内容%}
函数readTempDinamic(rowId){
var endpointTemp='/api/weatherData/getSensor/1/'+rowId+'/'
console.log(endpointTemp);
/* ############################################################################# */
$.ajax({
方法:“获取”,
url:endpointTemp,
成功:功能(数据){
变量行=[]
var值=[]
var read_data=[]
row=data.row
value=data.value
读取数据=data.read\u日期
generateGaugeCharts(行[0],读取数据[0],值[0])
},
错误:函数(错误\u数据){
console.log(“错误”)
console.log(错误\u数据)
}
})
/* ############################################################################# */
}
似乎只有在{%if row.state==1%}
时才调用函数,因此只有在db中有与此条件匹配的条目时才会执行。我注意到的另一件事是,JS代码不在
标记内,这可能是因为这个原因。