我想将div的文本复制到其类中。我有下面的代码,但它复制了所有兄弟div的文本,但我只想要当前div的文本作为它的类。
就像下面的代码将复制“我是亚历克斯你好吗”作为代码下面的两个div的类,我希望第一个div应该只有类“我是亚历克斯”,同样下一个类应该只有一个类“你好吗?”
<div class="someText">I am alex</div>
<div class="someText">How are you</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js" type="text/javascript"></script>
<script>
var classes = $(".someText").text().replace(/[, -- .]/g," ");
$(".someText").addClass(classes);
</script>
答案 0 :(得分:2)
这是一个非常奇怪的要求,但您可以通过将函数传递给addClass()
来实现它,如下所示:
$('.someText').addClass(function() {
return $(this).text();
});
&#13;
.am {
color: blue;
}
.are {
color: red;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="someText">I am alex</div>
<div class="someText">How are you</div>
&#13;
答案 1 :(得分:0)
你需要遍历每个div。
$(function() {
$('div.someText').each(function() {
var classes = $(this).text().replace(/[, -- .]/g, " ");
$(this).addClass(classes);
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="someText">I am alex</div>
<div class="someText">How are you</div>
&#13;
答案 2 :(得分:0)
这是你想要的吗?
var divs = $(".someText");
for (var i = 0; i < divs.length; i++) {
$(divs[i]).addClass($(divs[i]).text().replace(/[, -- .]/g," "));
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="someText">I am alex</div>
<div class="someText">How are you</div>