用此属性替换div html

时间:2013-04-14 04:38:58

标签: javascript jquery html

我有html代码

<div content="Something 1">Content 1</div>
<div content="Something 2">Content 2</div>
<div content="Something 3">Content 3</div>

我想使用jQuery用这个content属性替换HTML的内容。

<div content="Something 1">Something 1</div>
<div content="Something 2">Something 2</div>
<div content="Something 3">Something 3</div>

我不知道如何选择多个对象。 请任何人帮助我。 感谢。

3 个答案:

答案 0 :(得分:4)

  

ID不能包含空格。

这会将Content x的所有实例替换为Something x,从x获取id

$("div").each(function(){
    $(this).text($(this).attr("id"));
});

示例1:http://jsfiddle.net/charlescarver/xuGEq/2/

这会将Content x的所有实例替换为Something 1

$("div").each(function(){
    $(this).text("Something 1");
});

示例2:http://jsfiddle.net/charlescarver/xuGEq/1/

答案 1 :(得分:1)

如果你的所有id都以前缀开头,请使用:

$("div[id^='Something']").text("Something 1")

如果你要找的是编辑文档中的所有div标签,你可以简单地:

$("div").text("Something 1")

如果您确切知道要编辑的html标签是什么,我建议您使用课程标记它们。让我们说:

<div id="Something 1" class="editable">Content 1</div>
<div id="Something 2" class="editable">Content 2</div>
<div id="Something 3" class="editable">Content 3</div>

这样你就可以做到:

$(".editable").text("Something 1")

如果您想修改其内部文字。或者:

$(".editable").html("<strong>Something 1</strong>")

如果你想给他们一个更丰富的格式,不仅要修改他们的文本,还要修改他们的内部HTML。

将id与空格一起使用是一种不好的做法。 Chrome不会抱怨它,但是 其他一些浏览器会。因此,只有在你使用像“Something 1”这样的id时,最好使用“something_1”(对于属性和html标签使用小写是一种惯例)。

这里有一个链接,解释了选择器如何在jQuery中工作: http://api.jquery.com/

答案 2 :(得分:0)

如果您不想影响页面上的所有div,请尝试此操作,但只能在其ID中包含某些内容...

$("[id^=Something]").each(function(){
    $(this).text("Something 1");
});

请注意,在id中使用空格是不可取的,你应该将它们命名为“something1”......