为了账号安全,请及时绑定邮箱和手机立即绑定

禁用的表单输入不会出现在请求中。

禁用的表单输入不会出现在请求中。

四季花海 2019-06-28 17:21:43
禁用的表单输入不会出现在请求中。我在表单中有一些禁用的输入,我想将它们发送到服务器,但是Chrome将它们排除在请求之外。在不添加隐藏字段的情况下,有什么解决办法吗?<form action="/Media/Add">     <input type="hidden" name="Id" value="123" />     <!-- this does not appear in request -->     <input type="textbox" name="Percentage" value="100" disabled="disabled" /> </form>
查看完整描述

3 回答

?
沧海一幻觉

TA贡献1824条经验 获得超5个赞

没有提交禁用属性的元素,也可以说它们的值没有提交(参见步骤3下的第二个项目)。用于构建表单数据集的规范).

也就是说,

<input type="textbox" name="Percentage" value="100" disabled="disabled" />

FYI,

  1. 禁用控件不接收焦点。
  2. 在选项卡导航中跳过禁用的控件。
  3. 无法成功发布禁用控件。

你可以用readonly属性,通过这样做,您将能够发布字段的数据。

也就是说,

<input type="textbox" name="Percentage" value="100" readonly="readonly" />

FYI,

  1. 只读元素接收焦点,但用户不能修改.
  2. 选项卡导航中包括只读元素.
  3. 只读元素已成功发布。


查看完整回答
反对 回复 2019-06-28
?
aluckdog

TA贡献1847条经验 获得超7个赞

使用jQuery并使用Ajax发送数据,您可以解决问题:

<script>$('#form_id').submit(function() {
    $("#input_disabled_id").prop('disabled', false);

    //Rest of code
    })</script>


查看完整回答
反对 回复 2019-06-28
?
慕莱坞森

TA贡献1810条经验 获得超4个赞

如果您必须禁用字段并传递数据,则可以使用javascript将相同的数据输入到隐藏字段(也可以设置隐藏字段)。这将允许您禁用它,但仍然发布数据,即使您将张贴到另一个页面。


查看完整回答
反对 回复 2019-06-28
  • 3 回答
  • 0 关注
  • 440 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信