使用ajax&获取一些数据后json我有这个功能
if(data.length != 0) {
var arreglo = new Array();
$.each(data, function(index, data) {
if (jQuery.inArray(data.id, arreglo) == -1) {
arreglo.push(data.id);
$("#envivo").append("<li>Titulo: " + data.titulo + " Link: " + data.link + " Fuente: " + data.fuente + "</li>");
}
});
}
}
$(document).ready(function() {
var fecha = Math.round((new Date()).getTime() / 1000);
setInterval(function() {
$.ajax({
data: "fecha="+fecha,
type: "GET",
dataType: "json",
url: "data.php",
success: function(data){
restults(data);
}
});
}, 5000);
});
我正在尝试做什么
step 4
它不起作用并且是5的一部分(保存到数组中)
有什么想法吗?
提前致谢
答案 0 :(得分:1)
inArray函数使用标识比较运算符(===)。
如果数据将id作为字符串返回,则会导致问题,但您解释的是数字。
“9”==== 9&lt; - False
“9”== 9&lt; - True
答案 1 :(得分:0)
我已经尝试过你的代码了,它运行得很好:
您必须检查您获得的数据实际上是否符合预期。例如,您可以使用Firefox中FireBug插件中的Net选项卡来检查您在AJAX调用中获得的响应。
如果要重用该函数,则必须在函数外部创建数组:
var arreglo = [];
function restults(data) {
if(data.length != 0) {
$.each(data, function(index, data) {
if (jQuery.inArray(data.id, arreglo) == -1) {
arreglo.push(data.id);
$("#envivo").append("<li>Titulo: " + data.titulo + " Link: " + data.link + " Fuente: " + data.fuente + "</li>");
}
});
}
}