как удалить все атрибуты с группой элементов, используя jquery? - PullRequest
0 голосов
/ 27 апреля 2020

Я пытаюсь прочитать HTML элемента. но использование этого напрямую дало бы элемент вместе со многими атрибутами. Я попробовал некоторый код, но, к сожалению, он не работает. Так что, пожалуйста, ребята, если вы знаете, как-нибудь еще, пожалуйста, укажите

            $(document).ready(function () {
                $('#Btn').click(function () {
                    var pureHtml = $('#Menu1 ul *').removeAttr('style').removeAttr('class').
                        removeAttr('tabindex').removeAttr('role').removeAttr('style').
                        removeAttr('float').removeAttr('width');

                    pureHtml = $(pureHtml).each('ul li *').removeAttr('class').
                        removeAttr('tabindex').removeAttr('role').removeAttr('style').
                        removeAttr('float').removeAttr('width');

                    pureHtml = $(pureHtml).each('ul li a *').removeAttr('class').
                        removeAttr('onclick').removeAttr('tabindex');

                    $('#show').html(pureHtml);
                });
            });

1 Ответ

2 голосов
/ 27 апреля 2020

Я предпочитаю не использовать jQuery. Это легко обойтись без:

const div = document.querySelector('div');
console.log(div.outerHTML);

div.addEventListener('click',
  (event) => { 
    removeAllAttributes(event.target);
    console.log(div.outerHTML)
  }
);

function removeAllAttributes(element) {
  if (!element instanceof HTMLElement) return;
  const attributes = [...element.attributes].map(x => x.localName);
  for (const attribute of attributes) {
    element.removeAttribute(attribute);
  }
}
<div class="foo" id="bar" title="baz">Click me to remove all attributes</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...