form表单在提交时哪些数据是有效的

成功的control

在提交表单只有成功的control才是有效的。每个成功的control都有一对control name和current value 作为被提交的表单数据集的一部分存在。一个成功的control必须在form标签中定义并有control name。

但是:

  • 有disabled属性的control是不成功的
  • 如果一个表单有多个submit button,只有被点击的才是成功的
  • 所有“on”状态的checkboxes都是成功的
  • 对于拥有相同name属性的radio button,只有“on”状态的button才是成功的
  • 对于menu,其name由select提供,value由option提供,只有选中option,menu才是成功的control。当没有选择任何option时,control是不成功的,也就是说在表单提交时不会menu的name和value不会被提交
  • file select的value是一个或一组文件名,在表单提交时,每个文件的内容也会作为表单数据提交到服务器,文件内容的打包形式由form的content type属性规定
  • 一个对象的value是该对象的实现

在表单提交时若一个control没有value,用户代理不需要将其作为一个成功的control。
而且用户代理不应将以下control视为成功:

  • reset button
  • 设置了declare属性的object标签

隐藏的control或由于样式表而不会被绘制的control也可能是成功的control。例如:

<FORM action="..." method="post">
<P>
<INPUT type="password" style="display:none"  
          name="invisible-password"
          value="mypassword">
</FORM>

name为invisible-password,值为mypassword的control仍然会被提交。

(注:没有看完整的上下文,有些单词不知道是什么意思,但大概猜测这里的control应该就是一个html标签,而successful control的意思就是能会被提交到服务器的标签,name和value则都是标签中的属性)

摘自:https://www.w3.org/TR/html401/interact/forms.html#h-17.13.2

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值