我想創建一個帶有onclick函數的HTML表格來獲取一行的鍵值,到目前爲止,onclick函數正在工作,但它顯示併爲我排空陣列,我該如何解決這個問題。謝謝。HTML Table onClick函數獲取表格行鍵值
我想它是在控制檯日誌中顯示此格式,當你點擊第一行:
{ "name":"Clark", "age":29};
這裏是我的代碼
var table = document.getElementById("tableID");
if (table != null) {
for (var i = 0; i < table.rows.length; i++) {
table.rows[i].onclick = function() {
tableText(this);
};
}
}
function tableText(tableRow) {
var myJSON = JSON.stringify(tableRow);
console.log(myJSON);
}
<table align="center" id="tableID" border="1" style="cursor: pointer;">
<thead>
<tr>
<th hidden="hidden"></th>
<th>name</th>
<th>age</th>
</tr>
</thead>
<tbody>
<tr>
<td >Clark</td>
<td>29</td>
</tr>
<tr>
<td >Bruce</td>
<td>30</td>
</tr>
</tbody>
</table>
你傳遞一個DOM元素(即主機對象)JSON.stringify,你確定要工作?請參閱[*如何將DOM節點序列化爲JSON,即使有循環引用?](https://stackoverflow.com/questions/32377345/is-there-a-way-to-json-stringify-an-html- DOM-對象的JavaScript)。 – RobG
嗨@RobG感謝您的回覆,我想我走錯了方向。我的目標是獲取整個行對象onClick,以便稍後將其傳遞給稍後編輯REST API框架。現在我只想獲取JSON格式的對象。你能幫助我嗎?謝謝 –
TR的字符串化(串行化)版本是它的[* externalHTML *](https://developer.mozilla.org/en-US/docs/Web/API/Element/outerHTML),它可以作爲然後使用HTML解析器將字符串解析回DOM對象。在這種情況下,我認爲JSON是錯誤的工具。 – RobG