Получите все Атрибуты от элемента HTML с Javascript/jQuery

Вам нужно использовать results = 'asis' для фрагмента кода. Вот минимальный воспроизводимый пример:

---
title: "Untitled"
output: html_document
---

```{r, results='asis'}
library(summarytools)
dfSummary(iris, plain.ascii = FALSE, style = "grid")
```

производит

enter image description here

160
задан Community 23 May 2017 в 12:10
поделиться

3 ответа

Очень простой. Просто необходимо циклично выполниться по элементу атрибутов и продвинуть их nodeValues в массив:

let att = document.getElementById('id');

let arr = Array();

for (let i = 0; i < att.attributes.length; i++) {
    arr.push(att.attributes[i].nodeValue);
}

, Если хотят название атрибута, можно заменить 'nodeValue' для 'nodeName'.

let att = document.getElementById('id');

let arr = Array();

for (let i = 0; i < att.attributes.length; i++) {
    arr.push(att.attributes[i].nodeName);
}
0
ответ дан 23 November 2019 в 21:29
поделиться

Если вы просто хотите атрибуты DOM, он, вероятно, проще, чтобы использовать список атрибутов в самом элементе:

var el = document.getElementById("someId");
for (var i = 0, atts = el.attributes, n = atts.length, arr = []; i < n; i++){
    arr.push(atts[i].nodeName);
}

Обратите внимание, что это заполняет массив только с именами атрибутов. Если вам нужно значение атрибута, вы можете использовать NODEVALUE NODEVALUE :

var nodes=[], values=[];
for (var att, i = 0, atts = el.attributes, n = atts.length; i < n; i++){
    att = atts[i];
    nodes.push(att.nodeName);
    values.push(att.nodeValue);
}
208
ответ дан 23 November 2019 в 21:29
поделиться

в JavaScript:

var attributes;
var spans = document.getElementsByTagName("span");
for(var s in spans){
  if (spans[s].getAttribute('name') === 'test') {
     attributes = spans[s].attributes;
     break;
  }
}

Доступ к именам атрибутов и значений:

attributes[0].nodeName
attributes[0].nodeValue
-8
ответ дан 23 November 2019 в 21:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: