Simples Data Attribut auslesen geht nicht


wenco

Erfahrenes Mitglied
#1
Code:
 <div id='external-events'>
    <div class="Item">
    <span class="ItemDrag" id="Max, Moritz" data-id="1">Max, Moritz</span>
    </div>
    <div class="Item">
    <span class="ItemDrag" id="Hänsel, Gretel" data-id="2">Hänsel, Gretel</span>
    </div>
</div>

<script>
     var s = document.getElementById('Max, Moritz');
     alert(s);
     var a = s.attr("data-id");
     alert(a);               
</script>
Hallo ich möchte ein Data-Attribut auslesen, sollte doch eigentlich ganz einfach sein, aber Element wird gefunden, jedoch das Attribut wird nicht zurück gegeben? Was mach eich falsch?
 

basti1012

Erfahrenes Mitglied
#2
versuch mal so
Code:
<script>
     var s = document.getElementById('Max,Moritz');
   
     var a = s.getAttribute('data-id');
     alert(a);               
</script>
doch dieses Komma getrennte finde ich gerade nicht so gut. Es scheint zu gehen , doch ob das so richtig ist weiß nicht.
Aber dein Hänsel geht gar nicht. weil Ä;Ö,Ü und andere sonder Zeichen sind nicht erlaubt und sollten vermieden werden. Da kommen nur probleme
 

basti1012

Erfahrenes Mitglied
#4
wenn du mit jquery machen wilst würde ich es so machen
erstmal dein html ändern weil das komma da zwischen geht ja gar nicht, gerade bei jquery werden so einzelne ids und so getrennet.
also html so
Code:
  <span class="ItemDrag" id="MaxMoritz" data-id="1">Max, Moritz</span>
dann das jquery script so
Code:
a=$('#MaxMoritz').data('id');
alert(a);
ist ungetestet , aber sollte so gehen
 

basti1012

Erfahrenes Mitglied
#5
achso mit den attr bei jquery würde es dann auch so gehen
Code:
a=$('#MaxMoritz').attr('data-id');
alert(a);
Noch ein hinweiß im algemeinen
Beim debugging solllte man auf alert verzichten und console.log() nutzen.

Wenn du mal eine schleife hast die nicht gestoppt wird durch den Code , kanst du die alerst weg drücken wie du willst die kommen immer wieder und du kriegst den browser nicht mehr gestoppt so einfach.
Mit console.log(); kommst du da einfacher raus .
Das wahr jetzt mal ein world case senario wo du auf alert verzichten solltest,
Es gibt noch genug andere beispiele die console.log besser sind , aber das wahr jetzt nur ein beispiel
 

Neue Beiträge