我有一个形式,我需要禁用一系列复选框和几个字段,以便用户不能更改/更改其值。但是,当我提交表格时,残疾元素的帖子值丢失/null。如果没有这个问题,我该如何管理我要做的事情?

现在,我是通过这样禁用容器Div来禁用字段的:

#unselectable {
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    -webkit-user-select: none;
    cursor:not-allowed; 

}
有帮助吗?

解决方案

好吧,我能想到的三种解决方案:

  • 使他们 readonly 通过添加 readonly 属性到元素。
  • 在CSS/JavaScript中禁用它们。像残疾人一样上色,不允许使用JavaScript进行编辑,
  • 将其禁用,并在提交时删除禁用的。

选择:)

其他提示

您可以使用 readonly 代替 disabled 对于用户而言,Wich几乎是相同的(不能被编辑),但是 readonly- 元素在 disabled 没有。

请注意有 其他一些差异 在阅读和残疾人之间可能会给您带来其他问题:

禁用属性

  • 禁用表单元素的值未传递给处理器方法。 W3C称其为成功的元素。(这类似于未检查的表单复选框。)
  • 一些浏览器可能会覆盖或为残疾表单元素提供默认样式。 (灰色或浮雕文本)Internet Explorer 5.5对此特别讨厌。
  • 残疾表单元素没有得到焦点。
  • 禁用表单元素在标签导航中跳过。

仅读取属性

  • 并非所有表单元素都有一个可读的属性。最值得注意的是,该元素没有可读的属性(尽管您都有残疾属性)
  • 浏览器不提供仅读取表单元素的默认覆盖视觉反馈。 (这可能是一个问题……请参见下文。)
  • 带有ReadOnly属性集的表单元素将传递给表单处理器。
  • 仅阅读形式元素可以接收焦点
  • 读取仅包含表单元素。

将相同的数据发送到和来回没有什么意义。

只是留在 服务器端 然后在提交时使用它。

此外,假设

用户无法更改/更改其值。

很愚蠢。

您可以使用“只读”而不是残疾,这应该具有通缉效果

您还可以使用JavaScript提交您的表格,并预先提交Undisable(启用:P)各个字段?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top