Además, el firebug no siempre recoge el valor del array (relleno por los objetos), debo darle a refrescar (refresh), aunque me han dicho que esto puede ser normal en el firebug, ya que no siempre recoge los valores de las variables a la primera.
Como pueden ver utilizo Jquery v1.4 y el código lo que hace es leer un XML externo y recoge los datos en el array de objetos.
¿Es esto normal?¿A que se debe esto?¿Cómo puedo solucionarlo?
Muchas gracias a todos,
Cita:
<html>
<head><title>Prueba de lectura de fichero XML</title></head>
<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
var eventos = [];
$(function() {
//$('#dentro a').click(function() {
$.ajax({
type: "GET",
url: "prueba.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('contentSet').each(function(){
var evento = {};
//var name_text = $(this).find('name').text()
var id_text =""
$(this).find('sports-content-qualifier').each(function(){
evento.genero = $(this).attr('gender');
evento.indequi = $(this).attr('participant-count');
id_text = evento.genero +' '
id_text= id_text + evento.indequi
}); //cerrar each genero y participantes
var deporte = ""
$(this).find('sports-content-code').each(function(){
deporte = deporte + ' ' +$(this).attr('code-name')
}); // cerrar each deporte
evento.deporte = deporte
id_text = id_text + ' ' + evento.deporte
evento.ronda = $(this).find('tournament-round-metadata').attr('round-name')
id_text = id_text + ' ' + evento.ronda
$(this).find('remoteContent').each( function() {
evento.duracion = $(this).attr('duration')
evento.video = $(this).attr('href')
id_text = id_text + " "+evento.duracion+ " "+evento.video
})
if ($(this).find('event-metadata').attr('start-date-time') !== undefined){
evento.fechainicio = $(this).find('event-metadata').attr('start-date-time')
} else {
evento.fechainicio = $(this).find('tournament-round-metadata').attr('start-date-time')
}
id_text = id_text + ' ' + evento.fechainicio
evento.participantes = []
if (evento.indequi === "individual"){
$(this).find('player-metadata').each(function(){
var participante = {}
participante.nombre = $(this).find('name').attr('first')+" "+ $(this).find('name').attr('last')
participante.pais = $(this).find('home-location').attr('country')
evento.participantes.push(participante);
})
} else {
$(this).find('team-metadata').each(function(){
var participante = {}
participante.nombre = $(this).find('name').text()
participante.pais = $(this).find('home-location').attr('country')
evento.participantes.push(participante);
})
}
$('<li></li>')
.html(id_text)
.appendTo('#dentro ol');
eventos.push(evento); //añadir nuevo elemento a eventos
}); //close each de evento
}
});
alert(eventos.length);
});
</script>
<body>
<div id='dentro'>
<ol></ol>
</div>
</body>
</html>
<head><title>Prueba de lectura de fichero XML</title></head>
<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
var eventos = [];
$(function() {
//$('#dentro a').click(function() {
$.ajax({
type: "GET",
url: "prueba.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('contentSet').each(function(){
var evento = {};
//var name_text = $(this).find('name').text()
var id_text =""
$(this).find('sports-content-qualifier').each(function(){
evento.genero = $(this).attr('gender');
evento.indequi = $(this).attr('participant-count');
id_text = evento.genero +' '
id_text= id_text + evento.indequi
}); //cerrar each genero y participantes
var deporte = ""
$(this).find('sports-content-code').each(function(){
deporte = deporte + ' ' +$(this).attr('code-name')
}); // cerrar each deporte
evento.deporte = deporte
id_text = id_text + ' ' + evento.deporte
evento.ronda = $(this).find('tournament-round-metadata').attr('round-name')
id_text = id_text + ' ' + evento.ronda
$(this).find('remoteContent').each( function() {
evento.duracion = $(this).attr('duration')
evento.video = $(this).attr('href')
id_text = id_text + " "+evento.duracion+ " "+evento.video
})
if ($(this).find('event-metadata').attr('start-date-time') !== undefined){
evento.fechainicio = $(this).find('event-metadata').attr('start-date-time')
} else {
evento.fechainicio = $(this).find('tournament-round-metadata').attr('start-date-time')
}
id_text = id_text + ' ' + evento.fechainicio
evento.participantes = []
if (evento.indequi === "individual"){
$(this).find('player-metadata').each(function(){
var participante = {}
participante.nombre = $(this).find('name').attr('first')+" "+ $(this).find('name').attr('last')
participante.pais = $(this).find('home-location').attr('country')
evento.participantes.push(participante);
})
} else {
$(this).find('team-metadata').each(function(){
var participante = {}
participante.nombre = $(this).find('name').text()
participante.pais = $(this).find('home-location').attr('country')
evento.participantes.push(participante);
})
}
$('<li></li>')
.html(id_text)
.appendTo('#dentro ol');
eventos.push(evento); //añadir nuevo elemento a eventos
}); //close each de evento
}
});
alert(eventos.length);
});
</script>
<body>
<div id='dentro'>
<ol></ol>
</div>
</body>
</html>