我想改变td标签的类给定td标签的id:
<td id="td_id" class="change_me"> ...
我希望能够做到这一点,而在一些其他dom对象的点击事件。我如何获取td的id并改变它的类?
我想改变td标签的类给定td标签的id:
<td id="td_id" class="change_me"> ...
我希望能够做到这一点,而在一些其他dom对象的点击事件。我如何获取td的id并改变它的类?
当前回答
下面是使用jQuery的解决方案:
$(document).ready(function(){
if($('#td_id').hasClass('change_me')) {
$('#td_id').removeClass('change_me').addClass('something_else');
}
});
其他回答
编辑:
如果你说你从一个嵌套的元素改变它,你根本不需要ID。你可以这样做:
$(this).closest('td').toggleClass('change_me some_other_class');
//or
$(this).parents('td:first').toggleClass('change_me some_other_class');
http://api.jquery.com/closest/ http://api.jquery.com/parents/
最初的回答:
$('#td_id').removeClass('change_me').addClass('some_other_class');
另一种选择是:
$('#td_id').toggleClass('change_me some_other_class');
我最好使用.prop来改变className,它工作得很好:
$(#td_id).prop('className','newClass');
对于这一行代码,你只需要改变newClass的名称,当然还有元素的id,在下一个例子中:idelementinyourpage
$(#idelementinyourpage).prop('className','newClass');
顺便说一下,当您想要搜索应用于任何元素的样式时,您只需在页面显示时单击浏览器上的F12,然后在DOM Explorer的选项卡中选择您想要查看的元素。在Styles中,你可以看到你的元素应用了什么样式,以及它是从哪个类读取的。
$('.btn').click(function() {
$('#td_id').removeClass();
$('#td_id').addClass('newClass');
});
or
$('.btn').click(function() {
$('#td_id').removeClass().addClass('newClass');
});
如果你已经有了一个类,并且需要在类之间交替,而不是添加一个类,你可以链式切换事件:
$('li.multi').click(function(e) {
$(this).toggleClass('opened').toggleClass('multi-opened');
});
这个方法对我很有效
$('#td_id').attr('class','new class');