簡體   English   中英

動態讀取div的所有跨度

[英]reading all spans of a div dynamically

我有一個div里面,我有多個跨度。 現在我想閱讀所有跨度的所有文本以及thrir id並將其填充到javascript地圖中,其中key = spanid和value =“span of text.How我能做到嗎?

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

   </div>

我如何填充地圖?

您可以使用document.getElementByIddocument.getElementsByTagName獲取元素,然后遍歷它們並將它們添加到對象中。 使用textContentinnerText獲取span元素的文本,並將它們插入到對象中,如下所示:

var spans = document.getElementById('xyx').getElementsByTagName('span'), 
    obj = {};

for(var i = 0, l = spans.length; i < l; i++){
    obj[spans[i].id] = spans[i].textContent || spans[i].innerText;
}

看到它在這里工作: http//www.jsfiddle.net/SJs4h/

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

使用Jquery非常簡單:

var spans = $('#xyx').find('span');
var arr = new Array();
 foreach(spans as span)
 {
       arr[$(span).attr('id')] = $(span).text;
 } 

希望我幫忙。

更新:無jquery方式:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM