css 从属性值中删除HTML

bvn4nwqk  于 2023-04-13  发布在  其他
关注(0)|答案(1)|浏览(178)

我需要从data-original-title中删除HTML <br>

HTML:

<abbr class="small text-c-muted" data-toggle="tooltip" title="" data-original-title="Cena bez DPH<br> 1&nbsp;652,89&nbsp;Kč">s DPH</abbr>

我需要删除<br>,因为我在content: attr(data-original-title);中引用的页面上使用CSS ::after,但不幸的是,我正在接管它,包括我需要删除的给定<br>
我不能编辑源代码。我只能使用CSS和JS。

JavaScript:

如果我尝试插入JavaScript,此表示法不会获取页面并在控制台错误中返回它**:**
“未捕获的类型错误:无法读取undefined的属性(阅读“replace”)。

$('abbr.small').text(function(_,txt) {return $(this).attr('data-original-title').replace('<br>','');});

如何删除<br>
我尝试JavaScript与替换,但不工作.我需要删除<br>

zwghvu4y

zwghvu4y1#

jQuery解决方案:

$('abbr.small').attr('data-original-title', $(this).attr('data-original-title').replace('<br>',''));

纯JavaScript解决方案:

let element = document.querySelector('abbr.small');

element.setAttribute('data-original-title', element.getAttribute('data-original-title').replaceAll('<br>', ''));

如果有多个元素,则应使用querySelectorAll而不是querySelector,并使用for循环或forEach循环遍历这些项

let elements = document.querySelectorAll('abbr.small');

elements.forEach(element => {
    element.setAttribute('data-original-title', element.getAttribute('data-original-title').replaceAll('<br>', ''));
})

相关问题