JQuery3.3.1版本中使用size()复选框全选无效!

本文详细介绍了在将jQuery版本从1.7升级到3.3.1过程中遇到的多选按钮报错问题及解决方案。主要原因是$(obj).size()方法在1.8版本后被废弃,替换为$(obj).length。通过修改jqcheckBox.js文件中的相关代码,成功解决了页面多选按钮的兼容性问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先看一下页面的报错信息:

jqcheckBox.js:19 Uncaught TypeError: $(...).size is not a function
    at isCheck (VM1065 jqcheckBox.js:19)
    at onSubmitDel (dlzhList.do:72)
    at HTMLAnchorElement.onclick (dlzhList.do:215)

这个错误的原因是jquery在项目里面因为漏洞原因,被甲方强制要求由1.7换成了jquery3.3.1版本。这家伙,一下遇到了好多报错信息,首先编辑器不能使用,其次就是页面在F12开发者模式下简直不堪入目,现在先记录一个突出问题的解决办法:

页面的多选按钮,我使用了 “jqcheckBox.js” js文件来实现的,原来一直都好使,现在因为jquery的版本问题,报错了,报错的原因是因为jquery从1.8的版本开始就摒弃了$(obj).size()的写法,取而代之的是$(obj).length。

知道这个原因后,我就找到原因了,于是解决办法是:

将原来“jqcheckBox.js”中的所有$(obj).size()方法,换成$(obj).length。

比如:将这段代码:
function isCheck(checkBoxName){
	if($("input[name='"+checkBoxName+"']:checked").size()==0)
		return false;
	else
		return true;
}

替换成:
function isCheck(checkBoxName){
	if($("input[name='"+checkBoxName+"']:checked").length==0)
		return false;
	else
		return true;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值