我有一些代碼,我想看看錶中的每一行,並尋找一個特定的類特定的類。jQuery使用選擇器後.find()
$("tr").each(function() {
$(this).find("td").find(".group_name").css("background-color", "red");
});
這樣,所有類「group_name」的td都變爲紅色。
我有一些代碼,我想看看錶中的每一行,並尋找一個特定的類特定的類。jQuery使用選擇器後.find()
$("tr").each(function() {
$(this).find("td").find(".group_name").css("background-color", "red");
});
這樣,所有類「group_name」的td都變爲紅色。
使用此
$('tr').find('td.group_name').css('background-color', 'red');
這就是你想要的東西:
$("tr").each(function() {
$(this).find("td .group_name").css("background-color", "red");
});
爲什麼這麼複雜? 這是很容易
$('tr td.group_name').css('background-color', 'red');
啊傻我!我以爲只會選擇一個單一的 – Neil 2012-07-26 09:52:56
@Neil作爲一般的經驗法則:如果您使用的功能**設置**(無論是屬性,屬性,事件處理程序,數據,無論如何)它會影響它所調用的jQuery對象中的所有元素。如果你使用**得到**的函數(比如'.val()'),它只會影響jQuery對象中的* first *元素。 – 2012-07-26 09:56:37
你並不需要遍歷它...
當你做$("tr td.group_name")
將選擇TR裏面所有的td元素是具有類=「GROUP_NAME」
所以
$("tr td.group_name").css("background-color", "red");
將超過足夠:)
jQuery在這裏真的是過度殺傷,因爲您的最終目標是在任何<td>
元素中添加一個紅色背景色,其中group_name
類在<tr>
元素內(它們何時不是?)。爲此,您可以使用CSS聲明:
td.group_name {
background-color: red !important;
}
您何時打電話給我,順便說一下?是不是有一個特別的原因,你不僅僅是使用CSS定義來使類'group_name'的所有''元素的背景顏色變爲紅色? (注意td和.group_name之間的空格): – 2012-07-26 09:50:33
您顯示的代碼實際上正在執行(請注意td和.group_name之間的空格): $(「tr td .group_name」).css(「background-color」,「red」); – Azder 2012-07-26 09:53:07
還是更好爲什麼要使用jquery。對於造型儘可能使用CSS – Neil 2012-07-26 09:54:15