表单提交,成功控件
我们再来看一下浏览器是如何提交表单的,或者说,浏览器在提交表单时,要做哪些事情。
浏览器并不是将所有的表单控件全部发送到服务器的,
而是会查找所有的
【
成功控件
】
,
只
将这些成功控件的数据发送到服务端,什么是成功控件呢?
简单地来说,成功控件就是:每个表单中的控件都应该有一个
name
属性和
”
当前值
“
,在提
交时,它们将以
name=value
的形式做为提交数据的一部分。
对于一些特殊情况,成功控件还有以下规定:
1.
控件不能是【禁用】状态,即指定【
disabled="disabled"
】。即:禁用的控件将不是成
功控件。
2.
如果一个表单包含了多个提交按键,
那么仅当用户点击的那个提交按钮才算是成功控件。
3.
对于
checkbox
控件来说,只有被用户勾选的才算是成功控件。
4.
对于
radio button
来说,只有被用户勾选的才算是成功控件。
5.
对于
select
控件来说,所有被选择的选项都做为成功控件,
name
由
select
控件提供。
6.
对于
file
上传文件控件来说,如果它包含了选择的文件,那么它将是一个成功控件。
此外,浏览器不会考虑
Reset
按钮以及
OBJECT
元素。
注意:
1.
对于
checkbox, radio button
来说,
如果它们被确认为成功控件,
但没有为控件指定
value
属性,那么在表单提交时,将会以
"on"
做为它们的
value
2.
如果在服务端读不到某个表单控件的值,请检查它是否满足以上规则。
提交方式:
在前面的示例代码中,我为
form
指定了
method="post"
,这个提交方法就决定
了浏览器在提交数据时,通过什么方式来传递它们。
如果是【
post
】,那么表单数据将放在请求体中被发送出去。
如果是【
get
】,那么表单数据将会追加到查询字符串中,以查询字符串的形式提交到服务
端。
建议:表单通常还是以
post
方式提交比较好,这样可以不破坏
URL
,况且
URL
还有长度
限制。
表单提交,成功控件
最新推荐文章于 2024-07-20 13:11:17 发布