我有以下<input id="serviceCode" name="serviceCode" type="text" placeholder="" class="form-control input-md" required="" maxlength="4" value="T2" disabled="">
表单元素:
$_POST['serviceCode']
这很奇怪,但这不会作为3693019260
变量返回到服务器。我是否遗漏了某些内容,或者是“已禁用”的输入表单元素未传回服务器?
答案 0 :(得分:1)
禁用的元素不会发布到服务器as per the spec:
......它不能 接收用户输入,也不会将其值与表格一起提交。
如果要访问这些值,可以考虑创建元素readonly
或将值存储在隐藏元素中,并使用另一个禁用元素来显示它。
答案 1 :(得分:0)
是的,没错。
提交表单时不会发送已禁用的表单元素。
http://www.w3.org/TR/html5/forms.html#attr-fe-disabled:
disabled属性用于使控件非交互,并防止其值被提交。“ 如果您不希望用户能够更改值,但仍然在提交时使用表单发送它们 - 请改用readonly属性。