Form表单

1. form表单有什么作用?有哪些常用的input 标签,分别有什么作用?

form表单:

  • 标签用于为用户输入创建 HTML 表单。表单能够包含input 元素,比如文本字段、复选框、单选框、提交按钮等等。表单还可以包含menus、textarea、fieldset、 legend、label 元素。表单用于向服务器传输数据。form 元素是块级元素,其前后会产生折行。

input标签:

  • button :代表 HTML 文档中的一个按钮;button
  • checkbox :代表一个 HTML 表单中的 一个选择框checkbox
  • color :是 HTML5 中的新对象,访问颜色选择器color
  • date :是 HTML5 中的新对象,访问 Date 字段date
  • datatime :是 HTML5 中的新对象,访问 Datetime 字段datatime
  • datetime local :对象是 HTML5 中的新对象,访问 Local Datetime 字段datetime local
  • email :是 HTML5 中的新对象,访问 Email 字段email
  • fileupload :该元素包含一个文本输入字段,用来输入文件名,还有一个按钮,用来打开文件选择对话框以便图形化选择文件。该元素的 value 属性保存了用户指定的文件的名称,但是当包含一个 file-upload 元素的表单被提交的时候,浏览器会向服务器发送选中的文件的内容而不仅仅是发送文件名。为安全起见,file-upload 元素不允许 HTML 作者或 JavaScript 程序员指定一个默认的文件名。HTML value 属性被忽略,并且对于此类元素来说,value 属性是只读的,这意味着只有用户可以输入一个文件名。当用户选择或编辑一个文件名,file-upload 元素触发 onchange 事件句柄。fileupload
  • hidden :代表一个 HTML 表单中的某个隐藏输入域,这种类型的输入元素实际上是隐藏的。这个不可见的表单元素的 value 属性保存了一个要提交给 Web 服务器的任意字符串。如果想要提交并非用户直接输入的数据的话,就是用这种类型的元素。常用于安全性校验。hidden
  • input image :是 HTML5 中的新对象;input image
  • month :是 HTML5 中的新对象,访问 Month 字段month
  • number :是 HTML5 中的新对象,访问 Number 字段number
  • password :代表 HTML 表单中的密码字段,该文本输入字段供用户输入某些敏感的数据,比如密码等。当用户输入的时候,他的输入是被掩盖的(例如使用星号*),以防止旁边的人从他背后看到输入的内容。不过需要注意的是,当表单提交时,输入是用明文发送的。与类型为 "text" 的元素类似,当用户改变显示值时,它会触发 onchange 事件句柄。password
  • range :是 HTML5 中的新对象,访问滑块控件;range
  • radio :代表 HTML 表单中的单选按钮,单选按钮是表示一组互斥选项按钮中的一个。当一个按钮被选中,之前选中的按钮就变为非选中的。当单选按钮被选中或不选中时,该按钮就会触发 onclick 事件句柄。radio
  • reset :代表 HTML 表单中的一个重置按钮,当重置按钮被点击,包含它的表单中所有输入元素的值都重置为它们的默认值。默认值由 HTML value 属性或 JavaScript 的 defaultValue 属性指定。重置按钮在重置表单之前触发 onclick 句柄,并且这个句柄可以通过返回 fasle 来取消。reset
  • inputsearch :是 HTML5 中的新对象,访问 Search 字段inputsearch
  • submit :代表 HTML 表单中的一个提交按钮 (submit button),在表单提交之前,触发 onclick 事件句柄,并且一个句柄可以通过返回 fasle 来取消表单提交。submit
  • text :代表 HTML 表单中的文本输入域,该元素可创建一个单行的文本输入字段。当用户编辑显示的文本并随后把输入焦点转移到其他元素的时候,会触发 onchange 事件句柄。text
  • input time :是 HTML5 中的新对象,访问 TIME 元素.input time
  • input url :HTML5 中的新对象,访问 URL 字段.input url
  • week :是 HTML5 中的新对象,访问 Input Week 字段week

2. post 和 get 方式的区别?

两种最常用的 HTTP 方法是:GET 和 POST。

GET
  • 从指定的资源请求数据
  • 请求可被缓存
  • 请求保留在浏览器历史记录中
  • 请求可被收藏为书签
  • 请求不应在处理敏感数据时使用
  • 请求有长度限制
  • 请求只应当用于取回数据
POST
  • 向指定的资源提交要被处理的数据
  • 请求不会被缓存
  • 请求不会保留在浏览器历史记录中
  • 不能被收藏为书签
  • 请求对数据长度没有要求


    Form表单_第1张图片
    比较 GET 与 POST

3. 在input里,name 有什么作用?

  • name 属性规定 input 元素的名称。
  • name 属性用于对提交到服务器后的表单数据进行标识,或者在客户端通过 JavaScript 引用表单数据。
  • 只有设置了 name 属性的表单元素才能在提交表单时传递它们的值。
  • POST和GET的时候,name和input中的值会形成的 键/值 对,服务器端的表单处理程序只有通过name才能获取到相应的用户输入。

    String name = request.getParameter("username");

4. radio 如何 分组?

  • HTML 自动产生Radio分组,name设成一样的就能分成一组啦;

5. placeholder 属性有什么作用?

  • placeholder 属性提供可描述输入字段预期值的提示信息(hint)。该提示会在输入字段为空时显示,并会在字段获得焦点时消失。placeholder 属性适用于以下的 类型:text, search, url, telephone, email 以及 password。placeholder

6. type=hidden隐藏域有什么作用? 举例说明

隐藏域在页面中对于用户是不可见的,在表单中插入隐藏域的目的在于收集或发送信息,以利于被处理表单的程序所使用

  • 隐藏域在页面中对于用户是不可见的,在表单中插入隐藏域的目的在于收集或发送信息,以利于被处理表单的程序所使用。浏览者单击发送按钮发送表单的时候,隐藏域的信息也被一起发送到服务器。
  • 有些时候我们要给用户一信息,让他在提交表单时提交上来以确定用户身份,如sessionkey,等等.当然这些东西也能用cookie实现,但使用隐藏域就简单的多了.而且不会有浏览器不支持,用户禁用cookie的烦恼。
  • 有些时候一个form里有多个提交按钮,怎样使程序能够分清楚到底用户是按那一个按钮提交上来的呢?我们就可以写一个隐藏域,然后在每一个按钮处加上onclick="document.form.command.value="xx""然后我们接到数据后先检查command的值就会知道用户是按的那个按钮提交上来的。
  • 有时候一个网页中有多个form,我们知道多个form是不能同时提交的,但有时这些form确实相互作用,我们就可以在form中添加隐藏域来使它们联系起来。
  • javascript不支持全局变量,但有时我们必须用全局变量,我们就可以把值先存在隐藏域里,它的值就不会丢失了
  • 还有个例子,比如按一个按钮弹出四个小窗口,当点击其中的一个小窗口时其他三个自动关闭.可是IE不支持小窗口相互调用,所以只有在父窗口写个隐藏域,当小窗口看到那个隐藏域的值是close时就自己关掉。

7. 练习

form表单

你可能感兴趣的:(Form表单)