访问HTML数据集

时间:2015-03-23 09:35:50

标签: javascript html5 attributes html-dataset

我正在尝试访问HTML中的数据集。通常如果是:

<td data-mmyyyy="23"></td>

您可以使用

访问它
tdObj.dataset.mmyyyy

但由于某种原因,这对我不起作用。

var mmyyyy = tds[i].dataset.mmyyyy.split('/');

我在调试器上停止了它并从控制台输出以下内容:

tds // (ME)
  [(enumerated td nodes)] // (CONSOLE)
tds[i] // (ME)
  <td> // (CONSOLE)
    <a href="#" data-mmyyyy="3/2015">22</a>
  </td>
tds[i].dataset // (ME)
  DOMStringMap {}  // (CONSOLE)
tds[i].dataset.mmyyyy // (ME)
  undefined  // (CONSOLE)

有人能告诉我如何以不同的方式来访问该数据属性吗?感谢。

2 个答案:

答案 0 :(得分:0)

我的错!数据集位于标记内的标记上。所以正确的访问者将是

tds[i].children[0].dataset.mmyyyy

答案 1 :(得分:0)

如果您在控制台上看起来更好,您会看到它记录下来:

<td>
    <a href="#" data-mmyyyy="3/2015">22</a>
</td>

因此,根据控制台记录的数据,您尝试访问的dataset不在<td>元素上,而在其<a>子元素上。< / p>

要访问它,您可以这样做:

tds[i].children[0].dataset.mmyyyy

或者更好,querySelector

tds[i].querySelector("a").dataset.mmyyy