禁用的input值将不会被提交?
这是我在firefox中通过fireBug发现的。
在其他浏览器中是一样的吗?
如果是这样,这是什么原因?
是的,所有浏览器都不应该提交禁用的input,因为它们是只读的。
更多资讯 (第17.12.1节)
属性定义
禁用[CI]当为窗体控件设置时,此布尔属性将禁用用户input的控件。 设置时,disabled属性对元素有以下影响:
- 禁用的控件不会收到焦点。
- 禁用的控件在标签导航中被跳过。
- 禁用的控件不能成功。
以下元素支持disabled属性:BUTTON,INPUT,OPTGROUP,OPTION,SELECT和TEXTAREA。
该属性是inheritance的,但是本地声明覆盖inheritance的值。
如何禁用元素的呈现取决于用户代理。 例如,某些用户代理“灰色”禁用的菜单项,button标签等
在这个例子中,INPUT元素被禁用。 因此,它不能接收用户的input,也不会将其值与表格一起提交。
<INPUT disabled name="fred" value="stone">
注意。 dynamic修改disabled属性值的唯一方法是通过脚本。
disabled
input将不会提交数据。
使用readonly
属性:
<input type="text" readonly />
来源于此
他们不会被提交,因为这就是W3C规范中所说的 。
17.13.2成功的控制
成功的控制是“有效”的提交。 [剪断]
- 被禁用的控件不能成功。
换句话说,规范说,被禁用的控件被认为是无效的,不应该提交。
Disabled
控件不能成功,并且成功的控件对于提交是“有效的”。 这就是为什么禁用控件不提交表单的原因。
把readonly
属性,而不是disabled
工作正常。 readonly
字段正在提交POST数据。