14

如何创建一个不可点击但不灰显的 HTML 复选框?我使用了 disabled=disabled 标签,但这使它变灰(在 Chrome 中)。否则效果很好。在 jQuery 和 Rails 中工作...

谢谢。

4

6 回答 6

18

除了可用性问题:

$("input:checkbox").click(function() { return false; });

例如:http: //jsfiddle.net/nKwRj/

于 2011-06-20T13:13:32.523 回答
8

使用jQuery.onwithfalse作为回调:

$(":checkbox").on("click", false);

小提琴

于 2011-06-20T13:15:52.040 回答
3

防止复选框被 ID 或类更改。

/* by class */
$(".nochange").click(function () {
    return false;
});
/* by ID */
$("#nochange").click(function () {
    return false;
});

<input name='test' type='checkbox' class='nochange' checked='checked' />
<br />
<input name='test' type='checkbox' id='nochange' checked='checked' />

http://jsfiddle.net/mjames757/nX64E/1/

于 2014-02-21T14:54:49.620 回答
2

为什么你想让一个不可点击的复选框看起来是可点击的?愚弄用户?

如果您真的想愚弄用户,您可以使用绝对定位在其上方放置一个不透明度为 0.01 的 div(无需脚本)。但我仍然想知道为什么你觉得有必要对你的用户做这个恶作剧...... ;)

编辑:如果您真正需要的是包含一个用户不应该更改的值,但您不想要您可能正在考虑的“丑陋的禁用复选框”,您应该使用input type hidden完全不可见的 。

如果您想指示某些内容已预先选择但不可更改或类似的内容,请使用禁用的复选框来指示这一点(或者如果您愿意,可以使用漂亮的复选框的图像),但请注意禁用的复选框的值未提交。使用隐藏字段来包含所需的数据。

于 2011-06-20T13:16:08.437 回答
1

我有同样的问题,我希望用户选中该框,而不是客户端,客户端应该只看到选中的框,而不是进行更改,所以

在 html 中只需添加一个 css 指针事件样式

<input name='test' type='checkbox' style="pointer-events: none;"/>
于 2021-08-12T08:05:48.197 回答
0

我遇到了这篇文章以寻找最初问题的答案 - 并发现反对非灰色禁用复选框令人信服,所以我制作了一个包含以下内容的 td-tag:<%if rs("yes/no value") = -1 然后 response.write("√")%> (wing 是 &radic)。然后我得到一个干净的信息翼不邀请点击。

于 2013-03-18T21:00:00.013 回答