簡體   English   中英

為Javascript訪問命名HTML元素的屬性是什么

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM