“禁用”_POST变量表单元素是否为空服务器端?

时间:2016-05-12 19:37:37

标签: html forms input disabled-input

我有以下<input id="serviceCode" name="serviceCode" type="text" placeholder="" class="form-control input-md" required="" maxlength="4" value="T2" disabled=""> 表单元素:

$_POST['serviceCode']

这很奇怪,但这不会作为3693019260变量返回到服务器。我是否遗漏了某些内容,或者是“已禁用”的输入表单元素未传回服务器?

2 个答案:

答案 0 :(得分:1)

禁用的元素不会发布到服务器as per the spec

  

......它不能   接收用户输入,也不会将其值与表格一起提交。

如果要访问这些值,可以考虑创建元素readonly或将值存储在隐藏元素中,并使用另一个禁用元素来显示它。

答案 1 :(得分:0)

是的,没错。

提交表单时不会发送已禁用的表单元素。

http://www.w3.org/TR/html5/forms.html#attr-fe-disabled

  

disabled属性用于使控件非交互,并防止其值被提交。“   如果您不希望用户能够更改值,但仍然在提交时使用表单发送它们 - 请改用readonly属性。