Jquery 如何更改已经包含其他DOM元素的div的文本?
在我的页面中,我有许多DIV和p标记,我想将所有这些标记的文本更改为“Hi”(任意单词)。我能想到的就是:Jquery 如何更改已经包含其他DOM元素的div的文本?,jquery,html,dom,Jquery,Html,Dom,在我的页面中,我有许多DIV和p标记,我想将所有这些标记的文本更改为“Hi”(任意单词)。我能想到的就是: $('div, p').not('.btn').each ( function() { var oT = $(this).text(); $(this).text ( 'hi ' + oT ); }); 这会以某种方式更改父对象的文本,子对象保持不变 所以问题是我们如何更改所有DIV和p标记的文本。嵌套深度没有限制 p.S.这不是一个真正的问题,我只是想看
$('div, p').not('.btn').each ( function() {
var oT = $(this).text();
$(this).text ( 'hi ' + oT );
});
这会以某种方式更改父对象的文本,子对象保持不变 所以问题是我们如何更改所有DIV和p标记的文本。嵌套深度没有限制 p.S.这不是一个真正的问题,我只是想看看它是否能实现。你试过吗
$('.btn').click ( function () {
$('div, p').not('.btn').each ( function() {
$(this).prepend('hi');
});
});
示例:我认为代码正在执行您要求它执行的操作。除非只针对最里面的s和s,否则它将继续这样做,因为它会替换父对象的内容s@JohnGathogo这是正确的。如何更改每个DIV和P标记文本的文本?这就是问题所在。虽然它没有改变(替换)标签的文本,但它只是在预加。但仍然可以接受。如果您仍然可以将文本完全替换为
replace
,而不是prepend
,请更改您的答案。
var oT = $(this).html();
$(this).html ( 'hi ' + oT );
$('.btn').click ( function () {
$('div, p').not('.btn').each ( function() {
$(this).prepend('hi');
});
});