提交已禁用输入字段的值

Har*_*M V 89 html javascript

我想禁用输入字段,但是当我提交表单时,它仍然应该传递值.

使用案例:我试图从谷歌地图获取经度和经度并想要显示它,但我不希望用户编辑它.

这可能吗?

Sar*_*raz 212

我想在表单上禁用输入字段,当我提交表单时,不会提交禁用表单中的值.

使用案例:我试图从谷歌地图获取Lat Lng并想要显示它... 但不希望用户编辑它.

您可以readonly在输入字段中使用该属性

<input type="text" readonly="readonly" />
Run Code Online (Sandbox Code Playgroud)

  • 8年后的最佳答案。只是想补充一点,以使文本显示为不可编辑,所以我添加了CSS:`input:read-only {color:grey; }` (4认同)
  • 请注意,输入仍将能够获得焦点。请参阅:http://stackoverflow.com/questions/5443952/remove-text-caret-pointer-from-focused-readonly-input (2认同)
  • 不幸的是,这不适用于复选框和单选按钮 - 因为它们不能标记为“只读”。 (2认同)

Abu*_*man 19

我知道这已经过时了,但我遇到了这个问题并且没有一个答案是合适的.nickf的解决方案有效但它需要javascript.最好的方法是禁用该字段并仍然传递值是使用隐藏的输入字段将值传递给表单.例如,

<input type="text" value="22.2222" disabled="disabled" />
<input type="hidden" name="lat" value="22.2222" />
Run Code Online (Sandbox Code Playgroud)

这样传递了值,但用户看到了灰色的字段.readonly属性不会将其灰显.

  • 您可以在禁用的文本框上添加 CSS 以将它们变灰。 (3认同)

pjn*_*vas 10

您也可以使用Readonly属性:输入不会变灰但不可编辑

<input type="text" name="lat" value="22.2222" readonly="readonly" />
Run Code Online (Sandbox Code Playgroud)