omg*_*omg 205 forms http-post form-submit disabled-input
这是我在firefox中找到的fireBug.
在其他浏览器中是否相同?
如果是这样,原因是什么?
Fre*_*d K 260
disabled 输入不会提交数据.
使用readonly属性:
<input type="text" readonly />
Run Code Online (Sandbox Code Playgroud)
Azi*_*ziz 181
是的,所有浏览器都不应该提交禁用的输入,因为它们是只读的.
更多信息(第17.12.1节)
属性定义
disabled [CI]为表单控件设置时,此布尔属性禁用用户输入的控件.设置后,disabled属性对元素具有以下影响:
- 禁用的控件无法获得焦点.
- 标签导航中会跳过已禁用的控件.
- 禁用的控件无法成功.
以下元素支持disabled属性:BUTTON,INPUT,OPTGROUP,OPTION,SELECT和TEXTAREA.
此属性是继承的,但本地声明会覆盖继承的值.
如何呈现禁用元素取决于用户代理.例如,某些用户代理"灰显"禁用菜单项,按钮标签等.
在此示例中,INPUT元素被禁用.因此,它无法接收用户输入,也不会随表单一起提交其值.
Run Code Online (Sandbox Code Playgroud)<INPUT disabled name="fred" value="stone">注意.动态修改disabled属性值的唯一方法是通过脚本.
小智 22
可以使用三件事来模仿残疾人:
HTML:readonly属性(以便输入中存在的值可用于表单提交.用户也无法更改输入值)
CSS :( 'pointer-events':'none'阻止用户点击输入)
HTML :( tabindex="-1"阻止用户导航到键盘输入)
Mif*_*Fox 21
他们没有被提交,因为这就是它在W3C规范中的说法.
17.13.2成功控制
成功的控制对于提交是"有效的".[剪断]
- 已禁用的控件无法成功.
换句话说,规范说禁用的控件被视为无效,不应提交.
Ras*_*ran 12
<input type="text" disabled />
Run Code Online (Sandbox Code Playgroud)
而不是这个禁用使用只读
<input type="text" readonly />
Run Code Online (Sandbox Code Playgroud)
有两个属性,即readonly和disabled,可以进行半只读输入。但它们之间有细微的差别。
<input type="text" readonly />
<input type="text" disabled />
Run Code Online (Sandbox Code Playgroud)
readonly属性使您的输入文本被禁用,并且用户无法再更改它。disabled属性不仅会使您的输入文本被禁用(不可更改),而且不能被提交。jQuery 方法(一):
$("#inputID").prop("readonly", true);
$("#inputID").prop("disabled", true);
Run Code Online (Sandbox Code Playgroud)
jQuery 方法(二):
$("#inputID").attr("readonly","readonly");
$("#inputID").attr("disabled", "disabled");
Run Code Online (Sandbox Code Playgroud)
JavaScript 方法:
document.getElementById("inputID").readOnly = true;
document.getElementById("inputID").disabled = true;
Run Code Online (Sandbox Code Playgroud)
PSdisabled和readonly是标准的 html 属性。prop介绍了jQuery 1.6。