回答:
次のようにを使用して、クラスを(それが何だったかに関係なく)設定できます。.attr()
$("#td_id").attr('class', 'newClass');
クラスを追加する場合は、.addclass()
代わりに次のように使用します。
$("#td_id").addClass('newClass');
または、以下を使用してクラスを交換する簡単な方法.toggleClass()
:
$("#td_id").toggleClass('change_me newClass');
.closest('td')
代わりに使用できる親を取得するには.parents('td:first')
:)
I want to be able to do this while inside the click event of some other dom object. How do I grab the td's id and change its class?
-多分私はそれを間違って読んでいるかもしれません、多分彼はクラスを変更するためにtdのIDを使用することを意味します...
<td>
:)
change_me
使用する場合、パーツはオプションですtoggleClass()
彼はクラス名を置き換えたいと思います。
このような何かがうまくいくでしょう:
$(document).ready(function(){
$('.blue').removeClass('blue').addClass('green');
});
http://monstertut.com/2012/06/use-jquery-to-change-css-class/から
あなたはaddClassまたはtoggleClassをチェックすることができます
クリックされたときに変更したいので、プロセス全体を実行します。「外部DOMオブジェクト」が選択のような入力であると仮定しましょう:
このHTMLから始めましょう。
<body>
<div>
<select id="test">
<option>Bob</option>
<option>Sam</option>
<option>Sue</option>
<option>Jen</option>
</select>
</div>
<table id="theTable">
<tr><td id="cellToChange">Bob</td><td>Sam</td></tr>
<tr><td>Sue</td><td>Jen</td></tr>
</table>
</body>
いくつかの非常に基本的なCSS:
#theTable td {
border:1px solid #555;
}
.activeCell {
background-color:#F00;
}
そして、jQueryイベントを設定します。
function highlightCell(useVal){
$("#theTable td").removeClass("activeCell")
.filter(":contains('"+useVal+"')").addClass("activeCell");
}
$(document).ready(function(){
$("#test").change(function(e){highlightCell($(this).val())});
});
これで、選択から何かを選択するたびに、一致するテキストを含むセルが自動的に検出され、IDベースのプロセス全体を覆すことができます。もちろん、そのようにしたい場合は、次のようにして、値ではなくIDを使用するようにスクリプトを簡単に変更できます。
.filter("#"+useVal)
IDを適切に追加してください。お役に立てれば!
編集:
ネストされた要素から変更する場合は、IDはまったく必要ありません。代わりにこれを行うことができます:
$(this).closest('td').toggleClass('change_me some_other_class');
//or
$(this).parents('td:first').toggleClass('change_me some_other_class');
元の答え:
$('#td_id').removeClass('change_me').addClass('some_other_class');
別のオプションは次のとおりです。
$('#td_id').toggleClass('change_me some_other_class');
<td>
ないが、彼はそうかもしれないが、注意深く
私は.propを使用してclassNameを変更する方がよく、完全に機能しました。
$(#td_id).prop('className','newClass');
このコード行では、次の例のように、newClassの名前と、もちろん要素のIDを変更するだけです。idelementinyourpage
$(#idelementinyourpage).prop('className','newClass');
ちなみに、どの要素にどのスタイルが適用されているかを検索するには、ページが表示されているときにブラウザーでF12キーを押し、DOMエクスプローラーのタブで目的の要素を選択するだけです。スタイルでは、要素にどのスタイルが適用され、どのクラスからその読み取りが行われているかを確認できます。
var $td = $(this).parents('td:first')
] を見つけるイベントハンドラーを追加し、id [var id = $td.attr('id');
]とクラス[var class = $td.attr('class');
]を取得します。これは、TD内のクリック要素がトリガーするためです