【发布时间】:2014-06-05 10:18:03
【问题描述】:
<script>
$(document).ready(function () {
var chanels_elems = document.getElementsByClassName('chanels');
var ids = [];
var urls = [];
var i = 0;
for (i = 0; i < chanels_elems.length; i++) {
ids[i] = chanels_elems[i].id;
urls[i] = $('#' + ids[i]).attr('url');
}
for (i = 0; i < chanels_elems.length; i++) {
var id = ids[i];
$.ajax({
url: '{{ Url.media('ajax/testajax') }}',
dataType: 'json',
data: {id: ids[i], url: urls[i]},
type: 'POST',
success: function (result) {
if (result.status == '1') {
$('#span_' + result.id).attr('class', 'label label-success').empty().append('true');
}
if (result.status == '2') {
$('#span_' + result.id).attr('class', 'label label-danger').empty().append('false');
}
},
error: function (xhr) {
$('#span_' + ids[i]).attr('class', 'label label-info').empty().append('error');
}
});
}
});
</script>
错误处理程序中的 ids[i] 未定义,并且 var id = ids[i];也未定义。为什么?我能解决这个问题吗? 错误处理程序中的 ids[i] 未定义,并且 var id = ids[i];也未定义。为什么?这个问题我该怎么办?
【问题讨论】:
-
在第一个 for 循环后检查
ids值。它可能是空的 -
循环的所有迭代都是空的
-
你正在尝试获取空数组的第 i 个索引,所以我问你:未定义是否正常?
标签: php jquery ajax error-handling