You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

jQuery 1.12版本中find()选择器语法失效问题求助

问题原因与解决方案

问题根源

jQuery从1.6版本开始明确区分了**HTML属性(attribute)和DOM属性值(property)**的处理逻辑:

  • 在1.4.3中,[checked]选择器会同时匹配两种情况:页面HTML里写了checked属性的元素,以及用户动态勾选后处于选中状态的元素。
  • 升级到1.12.4后,[checked]仅会匹配HTML代码中存在checked属性的元素,不再识别动态改变的选中状态——这就是你的find()无返回值的核心原因。

修复代码

把选择器里的[checked]替换成:checked伪类即可,修改后的代码如下:

var str = $("#fav-inst-table")
.find("tr:has(td:has(input:checkbox[id^='fav_doc_']:checked))")

兼容性说明

这个修改后的写法不仅适配1.12.4,也完全兼容后续要升级的jQuery 3.x版本,无需额外调整。

内容的提问来源于stack exchange,提问作者Tim Z

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 07:30:50