残疾人投入的价值将不会提交?

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)

来源于此

  • 但这不适用于选择标签! (15认同)

Azi*_*ziz 181

是的,所有浏览器都不应该提交禁用的输入,因为它们是只读的.

更多信息(第17.12.1节)

属性定义

disabled [CI]为表单控件设置时,此布尔属性禁用用户输入的控件.设置后,disabled属性对元素具有以下影响:

  • 禁用的控件无法获得焦点.
  • 标签导航中会跳过已禁用的控件.
  • 禁用的控件无法成功.

以下元素支持disabled属性:BUTTON,INPUT,OPTGROUP,OPTION,SELECT和TEXTAREA.

此属性是继承的,但本地声明会覆盖继承的值.

如何呈现禁用元素取决于用户代理.例如,某些用户代理"灰显"禁用菜单项,按钮标签等.

在此示例中,INPUT元素被禁用.因此,它无法接收用户输入,也不会随表单一起提交其值.

<INPUT disabled name="fred" value="stone">
Run Code Online (Sandbox Code Playgroud)

注意.动态修改disabled属性值的唯一方法是通过脚本.

  • 解决方法:添加一个`<input type ="hidden">`元素,其名称/值与禁用的输入相同. (81认同)
  • 使用readonly ="readonly"代替:)请参阅http://stackoverflow.com/questions/7357256/disabled-form-inputs-do-not-appear-in-request (74认同)
  • @Allisone:Firefox 和 Chrome 似乎遵守了这一点(不提交禁用的输入)。其他浏览器没试过。 (2认同)
  • @JohnKugelman 为什么同名?残障者无论如何都不会提交。 (2认同)

小智 22

可以使用三件事来模仿残疾人:

  1. HTML:readonly属性(以便输入中存在的值可用于表单提交.用户也无法更改输入值)

  2. CSS :( 'pointer-events':'none'阻止用户点击输入)

  3. 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)


Ely*_*deh 6

有两个属性,即readonlydisabled,可以进行半只读输入。但它们之间有细微的差别。

<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)

PSdisabledreadonly是标准的 html 属性。prop介绍了jQuery 1.6