9
votes

lire toutes les allures d'un div dynamiquement

J'ai un div à l'intérieur desquels j'ai un nombre de spans. Maintenant, je veux lire tout texte de toutes les étendues avec ID de thron et le peupler dans une carte JavaScript dans laquelle Key = Spanid and Value = "Texte de la span.Comment puis-je le faire?

Eg <div mydiv="xyx" >   
     <span id ="sp1" > M/span>
     <span id ="sp2" > M/span>
     .... 
      ..

   </div>


0 commentaires

3 Réponses :


-1
votes

Utiliser jQuery sa très simple: xxx pré>

espoir que j'ai aidé. p>

Mise à jour: strong> NONE JQUERY WAY: P>

var spans = document.getElementById('xyx');
spans = spans.getElementsByTagName('span');
var arr = new Array();
foreach(spans as span) 
{
   arr[span.getAttribute('id')] = arr[span.innerHTML];
}


1 commentaires

@WebProject Eh bien, il y a plusieurs problèmes avec ce code - cela aurait été parfait dans PHP, mais JavaScript n'a pas de tableaux associatifs, foreach est une fonction ECMAScript 5 et ne fonctionne pas comme ça, et nouveau tableau est beaucoup plus verbose que tout simplement []



3
votes
var container=document.getElementById('xyx');
var spanArray=container.getElementsByTagName('span');
for(var s=0;s<spanArray.length;s++){
  spanText=spanArray[s].innerHTML;
}

0 commentaires

15
votes

Vous pouvez obtenir les éléments à l'aide de document.getelementByID et document.getelementsbytagname , puis les achète à l'autre et ajoutez-les à l'objet. Utilisez textContent et innertext Pour obtenir le texte de l'élément , et insérez-les dans l'objet, comme: xxx

Voir le fonctionnement ici: http://www.jsfiddle.net/sjs4h/


0 commentaires