Jquery 要替换父div范围内的文本吗
我的html结构如下Jquery 要替换父div范围内的文本吗,jquery,Jquery,我的html结构如下 <div> <div class="comments-title-wr clearFix"> <span id="commentsSize" class="comments-title">Some Text</span> </div> <div id="testId"> </div> </div> 但它不起作用你可能想要 $('
<div>
<div class="comments-title-wr clearFix">
<span id="commentsSize" class="comments-title">Some Text</span>
</div>
<div id="testId">
</div>
</div>
但它不起作用你可能想要
$('#testId').parent().find('.comments-title').text('something else');
试试这个
$('#testId').prev('.comments-title-wr.clearFix').find('.comments-title').text('something else');
您可以使用
同级
.comments title wr
和#testId
是兄弟。答案更新了,不知怎的错过了内在的跨度
$('#testId').siblings('.comments-title-wr').find('.comments-title').text('something else');
是一个需要2个参数的js函数。它是一种String
方法,它不修改原始字符串,而是返回一个新字符串,并应用替换项。但你甚至不需要这个函数。问题是调用jQuery方法时没有参数,它返回元素的文本内容,但得到的只是一个字符串对象,并且无法修改元素本身中的文本。相反,您应该使用带有参数的text()
版本。感谢Tcovo对此的解释+1:)
$('#testId').prev().children('span').text('something else');
$('#testId').siblings('.comments-title-wr').find('.comments-title').text('something else');
$('#testId').prev().find('span').text('HI');