2016-08-04 58 views
0

我想將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> 

回答

2

這是一個非常奇怪的要求,但你可以通過一個函數來addClass(),這樣實現它:

$('.someText').addClass(function() { 
 
    return $(this).text(); 
 
});
.am { 
 
    color: blue; 
 
} 
 
.are { 
 
    color: red; 
 
}
<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>

+0

謝謝老兄!你能不能請告訴我,我怎樣才能替換「,」與文本中的「和」沒有任何空格。 其實我是在這個功能之後,如果你能幫我... http://codepen.io/desandro/pen/pJPwpy –

+0

'$(this).text()。replace(',',' ').replace('和','');'。沒問題,很高興幫助 –

+0

不,並且正在從字符串中的任何地方取代a,n和d。 –

0

你會通過每個格需要循環。

$(function() { 
 
    $('div.someText').each(function() { 
 
    var classes = $(this).text().replace(/[, -- .]/g, " "); 
 
    $(this).addClass(classes); 
 
    }); 
 
});
<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>

+0

謝謝,我該如何設置數據過濾器=「。價值」爲一個按鈕相同的方式? –

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>