2014-02-11 43 views
0

我正在嘗試使用選定的廣播獲取單元格的內容。 這是我的JavaScript,但它不工作:如何使用選定的收音機獲取表格單元格的內容?

document.getElementById(document.querySelector('input[name="celselectie"]:checked').parentNode).innerHTML=(here some var); 

HTML:

<table id="speelveld"> 
<tr><td><input type="radio" name="celselectie" value="cel001"/></td> 
<td><input type="radio" name="celselectie" value="cel002"/></td> 
<td><input type="radio" name="celselectie" value="cel003"/></td> 
<td><input type="radio" name="celselectie" value="cel004"/></td> 
<td><input type="radio" name="celselectie" value="cel005"/></td> 
[.......] 
<td><input type="radio" name="celselectie" value="cel099"/></td> 
<td><input type="radio" name="celselectie" value="cel100 "/></td></tr> 
</table> 
+0

您沒有一個名爲 「選擇」 任何輸入,你正在使用'celselectie'。 –

+0

哎呀。我正要將單選按鈕的名稱更改爲「選擇」,但忘記了:l – 87387264223462

回答

2

document.querySelector返回選擇指定組相匹配的文檔中的第一個元素。

因此,您的代碼將無法捕捉多個元素。

這裏是我的方法:

1)讓所有的單選按鈕,以 「檢查」屬性,名稱celselectie

var d = document.getElementsByName('celselectie'); 

2)迭代,並檢查它如果是true然後得到它的parentNode並打印innerText

for (var i = 0; i < d.length; i++) { 
    if (d[i].checked) {   
     console.log(d[i].parentNode.innerText); 
    } 
} 

終極密碼:

var d = document.getElementsByName('celselectie');  
for (var i = 0; i < d.length; i++) { 
    if (d[i].checked) {   
     console.log(d[i].parentNode.innerText); 
    } 
} 

JSFiddle

相關問題