Javascript 使用jQuery检查html元素中是否存在任何字符串
我知道你可以这样做:Javascript 使用jQuery检查html元素中是否存在任何字符串,javascript,jquery,html,Javascript,Jquery,Html,我知道你可以这样做: $('.document-content p:has(br)').next('p').addClass("newClass") 要检查p标记内部是否有br标记,请执行以下操作: <p> <br> </p> 如何检查内部是否存在任何字符串 <p> "Some text" <br> </p> “一些文本” (原因是,我想删除p标记中包含字符串的所有br。您可以使用:contains选择
$('.document-content p:has(br)').next('p').addClass("newClass")
要检查p
标记内部是否有br
标记,请执行以下操作:
<p>
<br>
</p>
如何检查内部是否存在任何字符串
<p>
"Some text"
<br>
</p>
“一些文本”
(原因是,我想删除
p
标记中包含字符串的所有br
。您可以使用:contains
选择器:
$('.document-content contains("some text")').next('p').addClass("newClass")
var searchString = 'some text';
$('.document-content contains("' + searchString + '")').next('p').addClass("newClass")
如果要查找的字符串存储在变量中,则需要将其连接到选择器中:
$('.document-content contains("some text")').next('p').addClass("newClass")
var searchString = 'some text';
$('.document-content contains("' + searchString + '")').next('p').addClass("newClass")
原因是,我想删除p
标记中包含字符串的所有br
在这种情况下,您可以获取元素的text()
,并用它覆盖html()
:
$('.document-content').html(function() {
return $(this).text();
});
或
以上两种方法都可以,后者更短,但(IMO)更难看,并发出另一个DOM请求
你可以做类似的事情 这里有两个段落,一个里面有字符串,另一个没有文本,您可以使用
text()
检查段落是否包含字符串,现在您可以在if条件下执行任何操作,如果p
元素中有字符串,则这是唯一正确的
现在如果你想移除br标签,那么你可以这样做
但是,请记住,这将删除其中的所有html标记,例如,
给你
<p id='x'>
"Some text"
<br/>
<b>abc</b>
</p>
$('.document content').html($('.document content').text())代码>这将从p标记中删除所有其他标记,例如abcd
也将被删除removed@NaeemShaikh没错。如果OP能澄清这是否是故意的行为,我会修正。
<p id='x'>
"Some text"
<br/>
<b>abc</b>
</p>
$('p').each(function(i,ele){
if($(ele).text().replace(/\s/g, '').length>0)
{
alert($(ele).attr('id')+' has string');
$(ele).find('br').remove();
}
})