2013-12-09 38 views
-1

您可以看到下面的代碼,我試圖從表中選擇第三個td來計算重複項。javascript select td's and duplicates

我想將它們保存在一個新的數組中,並使用新的數組迭代並找到重複項。

我試過以下選擇想要的td。 Firefox給了我td中的所有項目,其中<sport>標記在中,但IE向我顯示了一個運動標記。請注意代碼是在表

function doIt() 
{ 

var table = document.getElementById('table'); 
var tr = table.getElementsByTagName('tr'); 
content = new Array; 

for (var i=0; i<tr.length; i++) 
{ 
content = tr[i].getElementsByTagName('td')[2].innerHTML; 
document.write(content); 
} 
} 

<tr class="grey"> 
    <td><Date>25.09.2014</Date></td> 
    <td><Time>09:00:00</Time></td> 
    <td><Sport>Soccer, Tennis</Sport></td> 
</tr> 
<tr class="blue"> 
    <td><Date>25.09.2014</Date></td> 
    <td><Time>09:45:00</Time></td> 
    <td><Sport>Basketball, Volleyball</Sport></td> 
</tr> 
<tr class="grey"> 
    <td><Date>25.09.2014</Date></td> 
    <td><Time>10:00:00</Time></td> 
    <td><Sport>Soccer, Tennis</Sport></td> 
</tr>... 
+0

'content = new Array();'或'content = []'。 '和content [i] = ...'。你的代碼充滿了錯誤 – karaxuna

回答

1

我希望我能理解你想要什麼。這是一個JS的作品。它會查看所有sport標籤,並只添加那些不是的標籤。 JSFiddle here

// Initialize empty array  
var array = []; 

// Get all the sport tags 
var sportTags = document.getElementsByTagName('sport'); 

// Iterate over the sport tags 
for(var i = 0; i < sportTags.length; i++){ 
    // Get the inner HTML 
    var current = sportTags[i].innerHTML; 

    // If it does not already exist, add it to the array 
    if (array.indexOf(current) < 0) { 
     array.push(current); 
    } 
} 

// Print the array to check the results 
alert(array); 
+0

謝謝。即時編程初學者..即使我的思維是錯誤的方式 – Mace83