Javascript 使用jquery隐藏在页面上重复的特定HTML模式
我的正则表达式和jquery技能让我失望 我需要在页面上显示的位置隐藏以下所有html(以下内容由数据库弹出):Javascript 使用jquery隐藏在页面上重复的特定HTML模式,javascript,jquery,html,regex,Javascript,Jquery,Html,Regex,我的正则表达式和jquery技能让我失望 我需要在页面上显示的位置隐藏以下所有html(以下内容由数据库弹出): 的外部链接: 我非常感谢JSFIDLE(或类似的)使用jquery只隐藏上述所有内容。(注意:第二段中有时会有数据。如果有,则应保持不变) 提前谢谢 作为记录,我自己也尝试过这样做,但是我的jquery技能是垃圾,最好从一张白板开始,因为我希望它只需要几行代码就可以实现。您可以迭代并检查文本是否是:的外部链接,然后隐藏或删除它 $(document).ready(function
的外部链接:
我非常感谢JSFIDLE(或类似的)使用jquery只隐藏上述所有内容。(注意:第二段中有时会有数据。如果有,则应保持不变)
提前谢谢
作为记录,我自己也尝试过这样做,但是我的jquery技能是垃圾,最好从一张白板开始,因为我希望它只需要几行代码就可以实现。您可以迭代并检查文本是否是:的外部链接,然后隐藏或删除它
$(document).ready(function () {
$("p > strong").each(function () {
if ($(this).text() == "External Links for:") {
//$(this).hide();
$(this).closest('p').remove();
}
});
});
或
注意:将代码包装在中,例如:
$( function() {
$( 'p>strong' ).each( function() {
$( this ).next( 'p' ).remove();
$( this ).remove();
});
});
如果希望只返回一行中两个段落的实例,可以创建一个复杂的过滤器,如下所示:
$('p').filter(function(i,el) {
var test1 = $(el).html() == "<strong>External Links for:</strong>";
var test2 = $(el).next('p').html() == "";
return test1 && test2;
}).next().addBack().hide(); // or .remove()
$('p')。过滤器(函数(i,el){
var test1=$(el.html()==“的外部链接:”;
var test2=$(el).next('p').html();
返回test1&&test2;
}).next().addBack().hide();//或删除()
可能想做
p>strong
,以防他们想用嵌套在p
标记中的文本保留嵌套的strong
标记。@Satpal我刚刚实现了另一种方法,但现在第一段的内容也被删除了-在我的页面中。谢谢你的帮助。谢谢你,做得很好。谢谢。
$( function() {
$( 'p>strong' ).each( function() {
$( this ).next( 'p' ).remove();
$( this ).remove();
});
});
$('p').filter(function(i,el) {
var test1 = $(el).html() == "<strong>External Links for:</strong>";
var test2 = $(el).next('p').html() == "";
return test1 && test2;
}).next().addBack().hide(); // or .remove()