0

我在删除
achor 标记的 href 属性内的标记时遇到问题。这是我检查站点元素时的代码:

<a href="mailto:sample-email.com<br />">sample-email.com</a>

我尝试使用此方法将其删除,但没有任何反应。

<script> 
jQuery(document).ready(function(){
    jQuery('a').attr('href').find('br').remove();
});

4

4 回答 4

5

工作演示

jQuery(document).ready(function () {
    jQuery('a').attr('href', function (_,old) {
        return old.replace('<br />', '');
    });
});
于 2013-11-04T03:50:05.673 回答
4
jQuery('a').attr('href', function(idx, href){
    return href.replace('<br />', '')
})

演示:小提琴

于 2013-11-04T03:50:23.370 回答
3

jquery find()是 DOM 遍历 API 的一部分。

在您粘贴的 HTML 示例中,<br />是 href 属性字符串的一部分。Find 将不起作用,因为<br>标签不在 DOM 中,而是错误地在字符串中。

您需要<br /使用基本字符串操作将 >` 替换为空字符串。

jQuery('a').attr('href', function(i, str){
    return str.replace('<br />', '');
})
于 2013-11-04T03:51:52.283 回答
1
$('a').attr('qttr', function(index, oldAttr){
    return oldAttr.replace(/\<br\s?\/\>/, "");
});

请注意,我会<br>从一开始就删除这些废话。

于 2013-11-04T03:50:32.653 回答