- HTML 表单是一个包含表单元素的区域,用于搜集不同类型的用户输入。
创建表单
<form>
标签用于创建 HTML 表单,常见的表单格式为:
<form name="" method="" action=""></form>
- name:定义表单的名字。
- method:定义表单结果从浏览器传送到服务器的方式,默认参数为:
get
。post
安全性更高,因此常用作传输密码,而get
安全性较低,一般用于查询数据。 - action:发送数据要去的地址。它的值必须是一个有效的URL,可以是相对URL也可以是绝对URL。如果没有提供此属性或者
action="#"
,则数据将被发送到包含表单的页面的URL。
插入表单对象
- 网页中的表单由许多不同的表单元素组成,这些表单元素包括文字字段、单选按钮、复选框、按钮等。
文字字段
- 在网页中最常见的表单元素就是文字字段,用户可以在文字字段内输入字符或者单行文本。 语法:
<input
type="text"
name="控件名称"
value="文字字段的默认取值"
size="控件的长度"
maxlength="最长字符数"
/>
该语法包含了许多参数,除了 type 参数以外,其他的参数都是可选的,大家可以自行选择。举个例子:
<form name="个人资料" methon="post" action="">
姓名:<input type="text" name="name" size="20"/><br />
年龄:<input type="text" name="age" size="40" value="10" maxlength="3"/>
</form>
密码输入框
- 密码输入框是一种特殊的文字字段,他的各个属性和文字字段是相同的,但是输入进密码输入框的字符全部是“*”表示,保证周围人看不见输入的文本。
<input type="password" name="pwd" />
单选按钮
- 单选按钮可以使用户从选择列表中选择一个选项。
<form name="formBox" method="post" action="">
<input type="radio" name="sex" value="male" checked />男<br />
<input type="radio" name="sex" value="female" />女
</form>
几个单选按钮可以连接在一起,只需要把它们的 name 值设置为相同的。同一组中只有一个按钮可以同时被选。如果没有选中任何一个,那么整个单选按钮池就被认为处于未知状态,且不会随表单提交。 可以尝试如果 name 不相同或者没有 name 会是什么情况。
复选框
- 复选框可以让用户从一个选项列表中选择超出一个的选项。
<input type="checkbox" name="travel" />旅游<br />
<input type="checkbox" name="sing" />唱歌<br />
<input type="checkbox" name="playgame" />打游戏<br />
复选框可以拥有自己的名字,并不需要属于一个组。
按钮
- HTML 表单中,有三种按钮:提交按钮,重置按钮,匿名按钮。我们可以使用 <button> 元素或者 <input> 元素来创建一个按钮。type 属性的值指定显示什么类型的按钮。
提交按钮
- 用于发送表单数据给服务器。
语法:
<button type="submit">
This a submit button<!--按钮名字-->
</button>
<!--or-->
<input type="submit" value="This a submit button" />
重置按钮
重置按钮用来清除用户在页面中输入的信息。
语法:
<form name="formBox" method="post" action="">
<input type="text" />
<button type="reset">
This a reset button
</button>
<!--or-->
<input type="reset" value="This is a reset button" />
</form>
匿名按钮(button)
没有自动生效的按钮,但是可以使用javaScript代码进行定制。如果你省略了type
属性,那么这就是默认值。
语法:
<button type="button">
This a anonymous button
</button>
<!--or-->
<button>
This a anonymous button
</button>
<!--or-->
<input type="button" value="This is a anonymous button" />
不管使用的是 <button>
元素还是<input> 元
素,按钮的行为都是一样的。它们的不同点在于:
- 从前面的例子中也可以看出 <button> 元素允许你使用 HTML 内容作为其标记内容,但 <input> 元素只接受纯文本内容。
- 使用 <button> 元素,可以有一个不同于按钮标签的值(通过将其设置为 value 属性)。(但是在 IE 8 之前的版本中是不行的)。
菜单和列表
菜单和列表主要是用来选择给定答案中的一种,这类选择中往往答案比较多。
下拉菜单
下拉菜单能够节省页面空间,正常状态下显示一个选项,单击展开所以选项。
<form name="formBox" method="post" action="">
<select name="select">
<option value="成都">成都</option>
<option value="广州">广州 </option>
<option value="四川">四川</option>
<option value="上海">上海</option>
</select>
</form>
注意:下拉菜单的宽度是由 <option> 标记中包含的最长文本的宽度决定的。
列表项
在页面中列表项可以显示出几条信息,一旦超出这个信息量,在列表项右侧会出现滚动条,拖动滚动条可以看到所有选项。
<form name="formBox" method="post" action="">
<select name="select" size="2" multiple="multiple">
<option value="成都">成都</option>
<option value="广州">广州 </option>
<option value="四川">四川</option>
<option value="上海">上海</option>
</select>
</form>
size="2"
表示一次显示 2 条数据
文本域
当用户想要填入多行文本时,就应该使用文本域而不是文本字段。文本域使用 <textarea> 标记。
<form name="formBox" method="post" action="">
留下您的联系方式:
<textarea name="textarea" cols="35" rows="5"></textarea>
</form>
clos
代表列数,rows
代表行数。
挑战:表单综合案例
源码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>表单综合案例</title>
</head>
<body>
<form action="" method="get">
<p>姓名:<input type="text" /></p>
<p>密码:<input type="text" /></p>
<p>
性别:
<input type="radio" name="sex" value="male" />男
<input type="radio" name="sex" value="female" />女
</p>
<p>
爱好:
<input type="checkbox" name="sing" />唱歌
<input type="checkbox" name="run" />跑步
<input type="checkbox" name="swim" />游泳
</p>
<p>
照片:
<input type="file" name="person_pic" />
</p>
<p>
个人描述:
<textarea name="textarea"></textarea>
</p>
<p>
籍贯:
<select name="select">
<option value="成都">成都</option>
</select>
</p>
<p>
<button type="submit">提交</button>
<button type="reset">重置</button>
</p>
</form>
</body>
</html>