JavaWeb学习之路(22)–HTML之表单与输入标签

1. 前言

之前我们所讲的一些系列各种HTML标签,都是为了给用户展示一些东西。


实际上HTML是可以让用户输入信息的,例如登录时输入用户名密码;购买东西时选择型号、颜色;发布博客时输入标题、内容。


HTML通过表单及输入标签,来实现用户输入内容的收集。


2. 表单标签

表单标签,格式为<form>表单内容</form>,中间的表单内容部分就是用来让用户输入内容的。


表单有两个重要的属性action和method,如下:


  <form action="#" method="get">


   </form>

1

2

3

其中action属性表示表单提交后,哪个后台程序负责处理这个请求,这个涉及到我们JavaWeb后端学习的内容,大家到此大概知道这个参数的意思就行。action="#"中#号并不是一个可以接受请求的地址,使用#的意思就是该表单目前不指定后台处理程序。


然后是method参数,这个也涉及网页前端和后台程序交互方式了,method可以选择get/post值,这两个值代表着表单内容提交到后台的不同方式,具体也是等我们学习JavaWeb后端的时候具体了解,此时大体知道就行。


3. 表单输入标签

好的,现在我们知道如何编写表单了,还需要在表单内添加输入标签,输入标签的作用就是让用户输入东西的。


3.1 文本框

文本框用来让用户输入一段文本,格式如下:


<form action="#" method="POST">

       请输入姓名: <input type="text" name="username"><br>

   </form>

1

2

3

其中<input>表示这是一个输入标签,type="text"表示这个输入标签的类型是文本框,最后name="username"是给这个输入标签起了个名字,之所以要起名字,是当网页上有多个输入标签时,能把他们区分开。


文本框输入效果如下:



3.2 密码框

密码框也是用来输入文本的,但是密码框为了保护密码的私密性,输入的内容会被隐藏,别人是看不到的,例如:


请输入与密码:<input type="password" name="password"><br>

1

效果如下:



3.3 单选框

单选框用于从若干选项中选择其中一个,例如性别只能从男、女中选择一个:


<form action="#" method="POST">

       请选择性别:

       <input type="radio" name="sex" value="male">男

       <input type="radio" name="sex" value="female">女

   </form>

1

2

3

4

5

注意这两个单选框都是表示性别,所以name相同。还有一个重要属性是value,当我们的表单提交给后台程序时,会将选中项的value值提交到后台,这样后台就知道用户从网页上选择了哪个选项了。


上面代码效果如下:



3.4 复选框

单选框只能选择一个,复选框可以选择多个,例如可以选择兴趣爱好:


 <form action="#" method="POST">

       请选择爱好:

       <input type="checkbox" name="hobby" value="basketball">篮球

       <input type="checkbox" name="hobby" value="football">足球

   </form>

1

2

3

4

5

由于两个复选框都是表示爱好,所以name相同。当表单提交到后台时,会将选中项的value值全部传递给后台程序。


上面的例子效果如下:



3.5 按钮

表单内还需要包含按钮,一般来说,点击按钮后会将表单提交给后台。


按钮其实分2大类,提交按钮点击后会提交表单,但是普通按钮点击后则不会提交表单,例如:


<form action="#" method="POST">

       请选择爱好:

       <input type="checkbox" name="hobby" value="basketball">篮球

       <input type="checkbox" name="hobby" value="football">足球

       <br>

       <input type="button" value="普通按钮">

       <input type="submit" value="提交按钮">

   </form>

1

2

3

4

5

6

7

8

效果如下:



可以尝试下,点击普通按钮没反应,但是点提交按钮,页面会刷新一下。


这样可能不够直观,我们修改下表单提交的action如下:


<form action="http://www.baidu.com" method="POST">

       请选择爱好:

       <input type="checkbox" name="hobby" value="basketball">篮球

       <input type="checkbox" name="hobby" value="football">足球

       <br>

       <input type="button" value="普通按钮">

       <input type="submit" value="提交按钮">

   </form>

1

2

3

4

5

6

7

8

也就是说,我们的表单提交给百度去处理(当然百度不会搭理我们,因为百度不是我们开发的,不会理会我们的请求)。


此时点击普通按钮,没反应,因为表单不会提交。而点击提交按钮,则会进入百度网页,表示当前信息交给百度处理了。


4. 小结

表单是用来让用户输入信息的,网页正是因为有了交互性,才变得生动有趣!


另外大家可能对前端、后台的概念不够熟悉,此处稍微解释下。


前端就是网页能看到的部分,而后台时网页的内容提交后进行分析处理的程序。我们目前学习的HTML输入网页前端开发,因为HTML的内容都会显示在网页中。

上一篇:JavaScript arguments对象全面介绍


下一篇:javadoc中的{@link }和{@linkplain }标签