【发布时间】:2012-08-22 03:24:56
【问题描述】:
当我的 ajax 响应成功时,我有以下代码:
success : function(response) {
$('#texto').append(response);
}
这是我附加的响应 html:
<body>
{% load custom_filters %}
{% for modulo in modulos %}
<div align="left" class="result" value="{{ modulo.nome }}">
{{ modulo.nome }} {{ modulo.versao }}.{{ modulo.chave_revisao|soma_um|mascara_versao }}
</div>
{% endfor %}
出现了 div,但是当我要使用它们的值时,我得到一个空字符串。比较结果是错误的。
$('.result').each(function(){
for (i=0; i<=vetBuscar.length;i++){
if($(this).val() == vetBuscar[i]){
return true;
} else {
vetBuscar.pop(i)
}
}
有人知道我怎样才能得到这个值吗?
【问题讨论】:
-
为什么你的回复包含
<body>标签? -
AJAX 调用完成后,您是否在 div 中添加 Django 模板标签/for 循环?在将模板发送给客户端之前渲染模板时会对其进行评估。如果您在成功的 AJAX 调用之后添加它们,它们将不会被评估,这意味着只有一个 div 具有 class="result" 并且它将具有 value="{{ modulo.name }}" 而不是那个变量将举行。
-
@goliney 这只是一个错字,谢谢
-
@Mikael 我不这么认为。我在这里做的是: - 我进行 ajax 调用; - 视图处理并返回这个小模板(它是一个单独的模板); - 然后,当请求成功时,我将 html 添加到我的主模板中。我的问题是我无法获得这个 div 的值。如果我请求数据的方式有问题,请警告我。