Скрипт показывает только один результат. Как вывести все результаты внутри тега ap?

1

У меня есть этот скрипт, который получает все атрибуты и его значения и выводит их на страницу. Проблема, с которой я сталкиваюсь, заключается в том, что в настоящее время она работает с document.write но я хочу поместить результаты в тег p. Когда я пытаюсь сделать это, он показывает только один атрибут и его значение. Как я могу вывести все атрибуты и их значения внутри целевого p тега?

Мой код

var foo = document.getElementById('foo'),
    attrs = foo.attributes,
    i = attrs.length,
    attr;

while (i--)
{
    attr = attrs[i];
    document.write(attr.name + '="' + attr.value + '"');
    /*document.querySelector('p').innerHTML= attr.name + '="' + attr.value + '"'; <-- This method only shows one attribute and its value :(*/
}
<div id="foo" class="bar baz" style="margin-left: 2px; height: 10px;"></div>

<p></p>
Теги:

2 ответа

2
Лучший ответ

Вы должны построить целую строку и написать в <p> один раз.

var content = [];
while (i--)
{
attr = attrs[i];
content.push(attr.name + '="' + attr.value + '"');
}
document.querySelector("p").innerHTML = content.join(" ")
  • 0
    OMG, спасибо, что это работает для меня.
0

Вы должны построить строку внутри цикла while и назначить эту строку на innerHTML после цикла.

  • 0
    Можете ли вы предоставить пример кода на самом деле это пример, который я нашел в Интернете не совсем мой код

Ещё вопросы

Сообщество Overcoder
Наверх
Меню