2017-08-23 23 views
1

私はいくつかのjQueryで修正したい小さなテーブルを持っています。静的HTMLのクラスを変更する機能がないため、jQueryを使用してすべての処理を行う必要があります。私は、class = xのtdが'48 Hour Hold 'と言っているのか、class = yのtdしかないのかを知りたいのですが、そのtrだけがUnavilableに変更されています。私は別のtrにあるものを除外する方法を知らない。jQueryで表の行を変更する

<table> 
    <tr> 
    <td class="x">48 Hour Hold</td> 
    <td class="y">Available</td> 
    </tr> 
    <tr> 
    <td class="x">Reference Desk</td> 
    <td class="y">Available</td> 
    </tr> 
</table> 
$(document).ready(function(){ 
    if($(".x:contains(48 Hour Hold)")){ 
    $(".y:contains(Available)").text('Unavailable'); 
    }; 
}) 

結果は、最終的には次のようになります。

<table> 
    <tr> 
    <td class="x">48 Hour Hold</td> 
    <td class="y">Unavailable</td> 
    </tr> 
    <tr> 
    <td class="x">Reference Desk</td> 
    <td class="y">Available</td> 
    </tr> 
</table> 

答えて

2

あなたはif条件を必要としない、あなただけの特定の文字列を含むすべての.xの要素を選択することができ、その後改訂

$('.x:contains("48 Hour Hold")').next('.y').text('Unavailable');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr> 
 
    <td class="x">48 Hour Hold</td> 
 
    <td class="y">Available</td> 
 
    </tr> 
 
    <tr> 
 
    <td class="x">Reference Desk</td> 
 
    <td class="y">Available</td> 
 
    </tr> 
 
    <tr> 
 
    <td class="x">48 Hour Hold</td> 
 
    <td class="y">Available</td> 
 
    </tr> 
 
</table>
next('.y')要素の

+0

これはまさに私が必要だった、簡単な質問です。​​私が変更したいのは、複数のリスト要素が離れている場合です。すなわち:。

+1

は、次にあなたが '兄弟を使用することができ 48時間保持 詳細情報 利用可能な(」Y ') '代わりに –

+0

私はそれが動作すると思います。どうもありがとうございます。私はこれを非常に感謝します。 –

関連する問題