for(var i = 0; i < checkeds.length; i++){
var check = 'user'+checkeds[i]+'--mycheckbox';
$("#"+check).parent('td').siblings('.text-status').removeClass('text-green');
console.log($("#"+check).parent('td'));
}
这段代码中 checkeds 是一个id的数组,第三行是查找这个id元素的父级的同级元素中带有.text-status样式的元素并去掉text-green这个样式。
可是无法生效,下面是控制台报出的查找的父级元素td的内容;
[prevObject: n.fn.init, context: document]
context
:
document
length
:
0
prevObject
:
n.fn.init
__proto__
:
Object(0)
这个是HTML的层级关系
0001

耿直BOY
男
1990-02-01
曾经获得迪尼斯全球最能吃奖曾经获得迪尼斯全球最能吃奖
北京
2399
123
github
******
18511009922
1991-02-01
23
23
23
正常
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
单开一个最简单的demo试一下就知道了、是可以拼接的、
只能说你的页面上代码哪里出了问题
看html中id为user1-mycheckbox
看你的拼接却是'user'+checkeds[i]+'--mycheckbox';
一个是短横线、一个是双短横线、还是代码贴错了?
题主可以判断一下是否选择器是正常的
// check = user1--mycheckbox
可以使用 不能使用的话那也只能是你页面上不存在这个ID
题主可以把测试代码发一下吗,这种情况一般就是你层级没找对
check 输出看下是不是你想要的结果,如果是,再检查这个id在页面上是不是存在的,带有这个id的元素一开始也是要存在页面上的,不能是未来元素!未来元素要用事件委托。