我设置了一个元素的 class ,现在想通过 JavaScript 更改该元素的 class ,我试过 jQuery 的 attr 修改 class 属性不行。
html:
js:
$('#prevBTN').className='previous disabled';
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
假设元素
可以这样改
屡试不爽。
jQuery把
document.getElementById('idValue')改成$('#idValue')就好啦HTML:
JS:
不是通过
attr,而是通过classNamePS:
如果你想为
li添加属性disabled可以这样做,不是添加class而是attr:$('#prevBTN').attr('disabled', true);去除attr:
楼主的代码是怎样的?
为什么我这里直接用attr()来设置class是可以的呢?
另外,jQuery还有addClass()和removeClass这两个方法,操作class 我一般用这两种方法。
jQuery有专门操作class的方法,可以查下相关API
感谢 @daryl 和 @tony_yin 的热心解答,我自己也想用吧
<li>标签里面的<a>换成<button>,能实现禁用按钮效果,但是.pager的 BootStrap 默认样式会变化;将
<li class="previous" id='prevBTN'>换成<li class="previous disabled" id='prevBTN'>使用document.getElementById('prevBTN').className='previous disabled';确实可行,但使用 jQuery 时会出现问题,$('prevBTN').className='previous disabled';就不能实现,主要原因是$('prevBTN')并不能得到 DOM 元素,而 className 是 DOM 里面的属性,$(selector)只能得到满足选择器条件 DOM 元素集合,解决方法:
$('prevBTN').get(0).className='previous disabled';