如何区分unckecked和disabled HTML复选框?

问题描述:

我试图从一些复选框中获取值。有些未被检查,有些被检查但被禁用。在这两种情况下,浏览器都不会将POST数据发送到服务器。如何区分unckecked和disabled HTML复选框?

我想知道的是,我如何知道该复选框未被选中或被禁用但被检查?

您只能检查,如果复选框被选中(发送)或不发送。

如果你真的想知道这个服务器端,你可以使用AJAX或设置hidden input before submit

您可以选中该复选框的,我希望不涉及JavaScript的黑客手段解决状态这里

document.getElementById("myBox").disabled 
+0

,但现在看来,这是唯一的解决方案。一分钟我以为使用readonly属性很好,但虽然复选框变灰,但它仍然可以改变。 –

+1

如果用户无法更改它,为什么不把状态安全地放到'Session'中? –

不幸的是,禁用的复选框值永远不会发送到POST。我会做的是制作一个小的JS代码,以便在发送表单之前启用复选框,或使用模仿复选框值的隐藏字段。