2012-03-10 6 views
1

テーブル内に存在するスパン内に別のクラスが見つからない場合は、テーブルを持つ任意の場所からクラスを削除する必要があります。クラスがテーブルw/jQueryに存在しない場合

基本的に私はhasClassの反対をする必要がありますが、私は何が間違っているのか分かりません。

if ($("#nyTable").find("span").not("ui-icon-triangle-1-s")) { 
    $("#nyTable").find("td").removeClass("redText"); 
} 

<table> 
<tr> 
    <td>as</td> 
    <td>asd</td> 
    <td>werwe</td> 
</tr> 
<tr> 
    <td><span class="ui-icon-triangle-1-s">asd</span></td> 
    <td><span class="ui-icon-triangle-1-s">asd</span></td> 
    <td><span class="ui-icon-triangle-1-s">asd</span></td> 
</tr> 
</table> 

UPDATE:ここに私のコードは、私は必ずこのクラス.ui-アイコン-三角形-1-S はテーブルのどこに存在していないことを確認する必要があります。

+0

テーブルまたはセルのどこにいても、どこに適用されますか? – charlietfl

+0

.ui-icon-triangle-1-sがテーブルに存在しない場合にのみ、.redTextを削除してください。 – santa

+0

更新された応答を参照してください – charlietfl

答えて

1
if (!$("#nyTable span.ui-icon-triangle-1-s").length) { 
    $("#nyTable td.redText").removeClass("redText"); 
} 
-1

この方法で試してみてください。クラスの場合

if ($("#nyTable").find("span:not(.ui-icon-triangle-1-s)")) { 
    $("#nyTable").find("td").removeClass("redText"); 
} 
1

このようなものはどうなりますか?

//$('#nyTable span:not('ui-icon-triangle-1-s')').removeclass('redText'); 

$('#nyTable span').not('ui-icon-triangle-1-s').removeclass('redText'); 

これは単に「擬似コード」である - この正確なコードはおそらく動作しますが、これらの線に沿って何かをしようとしません。

関連する問題