Home  >  Article  >  Web Front-end  >  第 10 章 表单元素[下]_html/css_WEB-ITnose

第 10 章 表单元素[下]_html/css_WEB-ITnose

WBOY
WBOYOriginal
2016-06-24 11:19:461127browse

学习要点:

1.其他元素

2.输入验证

 

主讲教师:李炎恢

 

本章主要探讨 HTML5 中表单中剩余的其他元素,然后重点了解一下表单的输入验证功能。

 

一.其他元素

表单元素还剩下几个元素没有讲解,包括下拉框列表 select、多行文本框 textarea、和 output 计算结果元素。

元素名称

说明

select

生成一个下拉列表进行选择

optgroup

对 select 元素进行编组

option

select 元素中的项目

textarea

生成一个多行文本框

output

表示计算结果

 

1.生成下拉列表

<select name="fruit">  <option value="1">苹果</option> <br />  <option value="2">橘子</option> <br />  <option value="3">香蕉</option></select>

解释:元素包含两个子元素 分组元素,还包含了一些额外属性。

属性名称

说明

name

设定提交时的名称

disabled

将下拉列表禁用

form

将表单外的下拉列表与某个表单挂钩

size

设置下拉列表的高度

multiple

设置是否可以多选

autofocus 

获取焦点

required 

选择验证,设置后必须选择才能通过

 

//设置高度并实现多选

<select name="fruit" size="30" multiple>

 

//默认首选

<option value="2" selected>橘子</option>

 

//使用 optgroup 进行分组,label 为分组名称,disabled 可以禁用分组

        <option value="2" selected>橘子</option>    

 

2.多行文本框

<textarea name="content">请留下您的建议! </textarea>

 

解释:生成一个可变更大小的多行文本框。属性如下:

属性名称

说明

name

设定提交时的名称

form

将表单外的多行文本框与某个表单挂钩

readonly

设置多行文本框只读

disabled

将多行文本框禁用

maxlength

设置最大可输入的字符长度

autofocus

获取焦点

placeholder

设置输入时的提示信息

rows

设置行数

cols

设置列数

wrap

设置是否插入换行符,有 soft 和 hard 两种

required

设置必须输入值,否则无法通过验证

 

//设置行高和列宽,设置插入换行符

<textarea name="content" rows="20" cols="30" wrap="hard"></textarea>

 

3.计算结果

<form oninput="res.value = num1.valueAsNumber * num2.valueAsNumber">    <input type="number" id="num1">    x    <input type="number" id="num2">    <output for="num1 num2" name="res"></form>

解释:output 就是计算两个文本框之间的值,其实就是内嵌了 JavaScript 功能。

 

二.输入验证

HTML5 对表单提供了输入验证检查方式,但这种验证还是比较简陋的,并且不同的浏览器支持的成熟度还不同。在大部分情况下,可能还是要借助 jQuery 等前端库来实现丰富的验证功能和显示效果。

//必须填写一个值 

<input type="text" required>

 

//限定在某一个范围内

<input type="number" min="10" max="100">

 

//使用正则表达式

<input type="text" placeholder="请输入区号+座机" required pattern="^[\d]{2,4}\-[\d]{6,8}$">

 

//禁止表单验证

<form action="http://li.cc" novalidate>

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn