[英]What attribute to name HTML elements for Javascript access
我應該使用什么HTML屬性來命名我想要從Javascript中解決的HTML元素。 例如,如果我可以使用name
:
<table id="some_table">
<tr>
<th name="date">Date</td>
<th name="time">Time</td>
<th name="name">Name</td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</table>
我可以用這樣的jQuery選擇它們:
$('#some_table th[name=time]')
但是,這是無效的,因為td
不允許使用該name
。 id
必須是唯一的,所以我也不能使用它。 如果有CSS類.time
class
可能會影響樣式。 也許像data-name
? 什么是首選方式?
要擴展我的注釋,您不需要“為td賦予一些帶有列名稱的屬性”。 標准方法是從列名中獲取列索引,然后使用此索引檢索所有tds。
例如,如果time是第二列(索引1),則所有時間tds都是:
getElementById("some_table").rows[i].cells[1]
(JavaScript具有遍歷表的本機方法)
您可以通過其id值,名稱,tagName,與其他元素的接近程度,任何值,甚至通過選擇器字符串來選擇元素。 沒有單一的首選方法; 這一切都取決於你想要做什么。
在您的情況下,如果您願意,可以通過索引選擇表行和單元格。 正如您所指出的,您還可以使用數據屬性 - 任何一種方法都可以呈現您想要的結果,這是一種訪問元素的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.