如何将单类选择器的jQuery调用改为多类选择器批量调用?
解决jQuery多类选择器批量调用问题
你需要从5个指定class的成员组中提取信息,原代码仅支持单类调用,尝试传入多个选择器参数后脚本失效,问题出在jQuery选择器的语法使用错误。
原单类调用代码
var len = $('.mg3').length; $(`.mg3`).each(function (index) { // 从该类用户中提取信息的后续逻辑 });
错误的多类调用尝试
var len = $('.mg3', '.mg4', '.mg5', '.mg6', '.mg7').length; $(`.mg3`, `.mg4`, `.mg5`, `.mg6`, `.mg7`).each(function (index) { // 后续逻辑 });
正确的解决方法
jQuery中多类选择器需要写在同一个字符串里,用逗号分隔,而不是作为多个独立参数传入$()($()的第二个及以后参数是指定查找上下文,不是额外选择器)。
修正后的代码:
// 一次性选中所有目标类的元素 var targetMembers = $('.mg3, .mg4, .mg5, .mg6, .mg7'); var len = targetMembers.length; targetMembers.each(function(index) { // 保留你原本提取信息的逻辑即可 // 示例:获取当前元素的文本内容 // var userInfo = $(this).text(); });
这样就能批量选中5个类的元素,正常执行后续的信息提取逻辑。
内容的提问来源于stack exchange,提问作者Katherine Fairbanks
相关产品推荐
相关产品推荐

