2016-08-11 48 views
0

我有一個html表格。其中每個表格行包含多個輸入文本區域,每個輸入文本區域都具有由javascript動態分配的唯一ID。現在,我想將表格的第一列的所有ID都放入數組中。我在這件事上面臨着問題。請幫幫我。在Javascript中使用表單元格值訪問

我的桌子的

HTML代碼如下:

<table id="POITable"> 
    <tr> 
     <th>Item</th> 
     <th>Brand</th> 
     <th>UOM</th> 
     <th>Quantity</th> 
     <th>Remarks</th> 
    </tr> 

    <tr style="visibility:hidden;">    <!-- This is just a dummy row--> 
     <td><input size=25 type="text"/></td> 
     <td><input size=25 type="text"/></td> 
     <td><input size=25 type="text"/></td> 
     <td><input size=25 type="text"/></td> 
     <td><input size=25 type="text"/></td> 
     <td><img alt="Icon" src="/assets/add-icon.png" id="addmorePOIbutton" onclick="insRow()" /></td> 
     <td><img alt="Icon" src="/assets/minus-icon.png" id="delPOIbutton" onclick="deleteRow(this)"/></td> 
    </tr> 

    <tr> 
     <td><input size=25 type="text"/></td> 
     <td><input size=25 type="text"/></td> 
     <td><input size=25 type="text"/></td> 
     <td><input size=25 type="text"/></td> 
     <td><input size=25 type="text"/></td> 
     <td><img alt="Icon" src="/assets/add-icon.png" id="addmorePOIbutton" onclick="insRow()" /></td> 
     <td><img alt="Icon" src="/assets/minus-icon.png" id="delPOIbutton" onclick="deleteRow(this)"/></td> 
    </tr> 
</table> 

現在我的JavaScript代碼來把輸入文本框的ID是:

function make_summary() 
    { 
    var arr=new Array(); 
    var x=document.getElementById('POITable'); 
    var size=x.rows.length; 

    for (i=2;i<=x.rows.length-1;i++) 
    { 
     var each_row=x.rows[i]; 
     var each_col=each_row.cells[1]; 
     console.log(each_col); 
    } 
    } 

我可以訪問每一個表的數據,我意味着td標籤,但是由於每個td標籤內都有<input>標籤,所以如何訪問該輸入標籤元素?

each_col.getElementByTagName();不起作用。這是拋出錯誤。

請給我一些解決方案。請給我只有JavaScript解決方案(請不要jquery)。

+0

'each_col.getElementsByTagName( '輸入')[0]'或'each_col.querySelector( '輸入')' –

回答

2

因爲有你td標籤總是隻有一個元素,你可以訪問內部元件與

each_col.getElementsByTagName('input')[0]; 

記住getElementsByTagName()返回的HTMLCollection,不是一個單一的元素 - 所以你必須指定的您想要定位的元素。

順便說一句...沒有方法叫getElementByTagName() - 這可能是混淆來自何處。這是元素的複數 - >元素

getElementsByTagName() 
     ^
+1

非常感謝你@mmm – Abhradip

相關問題