Gå til innhold

[Løst] JSON array, velge ut første object.


Anbefalte innlegg

Hei!

 

Litt javascript først:

<script>
function infoscreen()
{
$.get('get-new.php',{screenid: "<?php echo $screenID; ?>" })
.done(function(data){

var arr = $.parseJSON(data);

$.each(arr, function(index, value) {
$('#msg').fadeIn("slow").append(value.media);
console.log(value.media);

  });

});
}
setInterval(infoscreen(),2000);
</script>

JSON arrayet:

[{"mediaID":"1","screenID":"2","media":"<h2>Dette er en test<\/h2>","active":"1"},{"mediaID":"2","screenID":"2","media":"<h3>Dette er test nummer 2<\/h3>","active":"1"}]

 

Jeg sliter med ett lite problem, å velger å ty til dere her på forumet.

Jeg har to verdier i array'et mitt og jeg ønsker og separere dem slik at jeg kan printe dem ut individuelt.

 

Jeg har prøvd: value[0].media og value[1].media, uten hell. Den looper 2 ganger og gir meg «undefined» som svar.

 

Noen som kan hjelpe meg ? :)

Lenke til kommentar
Videoannonse
Annonse

Dette kommer opp i konsollet på nettleseren og det er forsåvidt rett når jeg bruker "value.media".

<h2>Dette er en test</h2> 
<h3>Dette er test nummer 2</h3>

 

Og dette kommer opp når jeg kjører ut kun "value":

Object {mediaID: "1", screenID: "2", media: "<h2>Dette er en test</h2>", active: "1"} 
Object {mediaID: "2", screenID: "2", media: "<h3>Dette er test nummer 2</h3>", active: "1"}

 

Som også forsvidt er rett :p

 

Men jeg ønsker og dele disse to objectene fra hverandre, slik at jeg kan kjøre ut: "<h2>Dette er en test</h2>" også loope igjennom arrayet, for så og printe ut "<h3>Dette er test nummer 2</h3>".

 

Jeg er ikke spessielt erfaren med javascript, hvordan kan jeg sette breakpoint på $.each loopen?

Lenke til kommentar

*snip*

 

Fikk det til! :w00t:

 

<script>
function infoscreenLoop(i) {
$.get('get-new.php',{screenid: "<?php echo $screenID; ?>" })
.done(function(data){

  var arr = $.parseJSON(data);
setTimeout(function(){
 $("#msg").fadeIn(1000).html("<div id='msg'>"+arr[i].media+"</div>");
 $("#msg").delay(8000).fadeOut(1000);
 i++;
  if(i < arr.length){
   infoscreenLoop(i);
  }else{
   infoscreenLoop(0);
  };
}, 10000);

})};
infoscreenLoop(0);
</script>

 

For dem som vil forstå seg på det :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...