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

jQuery实现复选框不可勾选(非disabled)的正确方案咨询

解决方案

要实现复选框无法取消勾选但保持正常视觉状态,推荐以下两种方法:

方法一:监听点击事件强制保持勾选

这种方法会在用户点击复选框时,立刻将其状态重置为勾选,确保无法取消:

// 锁定复选框,禁止取消勾选
$('input[type="checkbox"][name="feature1"]:first').on('click', function() {
    $(this).prop('checked', true);
});

如果需要恢复复选框的可勾选状态,只需解绑该点击事件即可:

// 恢复可勾选功能
$('input[type="checkbox"][name="feature1"]:first').off('click');

方法二:监听状态变化事件恢复勾选

通过监听复选框的change事件,当检测到它被取消勾选时,强制恢复勾选状态:

// 锁定复选框
$('input[type="checkbox"][name="feature1"]:first').on('change', function() {
    if (!$(this).is(':checked')) {
        $(this).prop('checked', true);
    }
});

// 恢复可勾选功能
$('input[type="checkbox"][name="feature1"]:first').off('change');

你之前代码报错的原因

$('...').on("click", true)这种写法不符合jQuery的事件绑定规范:on()方法的第二个参数应为事件数据对象或委托选择器,传入布尔值true会导致jQuery内部调用事件处理函数时出错,从而抛出你看到的类型错误。

内容的提问来源于stack exchange,提问作者Shen Henry

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 01:47:28