- type属性总汇
- type属性解析
一、type属性总汇
input元素可以用来生成一个供用户输入数据的简单文本框。在默认的情况下,什么样的数据均可以输入。而通过不通的属性值,可以限制输入的内容。
属性名称 | 说明 |
---|---|
text | 一个单行文本框,默认行为 |
password | 隐藏字符的密码框 |
search | 搜索框,在某些浏览器输入内容会出现叉标记取消 |
submit、reset、button | 生成一个提交按钮、重置按钮、普通按钮 |
number、range | 只能输入数值的框;只能输入一个在数值范围的框 |
checkbox、radio | 复选框,用户勾选框;单选框,只能在几个中选一个 |
image、color | 生成一个图片按钮,颜色代码按钮 |
email、tel、url | 生成一个检测电子邮件、号码、网址的文本框 |
date、month、time、week、datetime、datetime-local | 获取日期和时间 |
hidden | 生成一个隐藏控件 |
file | 生成一个上传控件 |
二、input元素解析
1、type为text值时
<form>
<input type="text">
<button>提交</button>
</form>
解释:当type值未text时,呈现的就是一个可以输入任意字符的文本框,这也是默认行为。并且,还提供了一些额外的属性。
属性名称 | 说明 |
---|---|
list | 指定为文本框提供建议值的datalist元素,其值为datalist元素中的id值 |
maxlength | 设置文本框最大字符长度 |
pattern | 用于输入验证的正则表达式 |
placeholder | 输入字符的提示 |
readonly | 文本框处于只读状态 |
disabled | 文本框处于禁用状态 |
size | 设置文本框宽度 |
value | 设置文本框初始值 |
required | 表明用户必须输入一个值,否则无法通过输入验证 |
①、设置文本框输入字符长度maxlength
<form>
<input type="text" maxlength="10">
<button>提交</button>
</form>
②、设置文本框长度(默认值20)size
<form>
<input type="text" size="30">
<button>提交</button>
</form>
③、文本框处于只读状态readonly
<form>
<input type="text" value="xiaoxiaobukuang" name="user" readonly >
<button>提交</button>
</form>
④、文本框处于禁用状态disabled
<form>
<input type="text" value="xiaoxiaobukuang" name="user" disabled >
<button>提交</button>
</form>
⑤、设置文本提供的建议值
<form>
<input type="text" list="abc">
<button>提交</button>
</form>
<datalist id="abc">
<option>苹果</option>
<option value="2">橘子</option>
<option value="3" label="香蕉">
<option value="菠萝">
</datalist>
⑥、标明用户必须输入一个值,否则无法通过输入验证required
<form>
<input required type="text">
<button>提交</button>
</form>
⑦、设置文本输入提示placeholder
<form>
<input type="text" placeholder="请输入内容">
<button>提交</button>
</form>
2、type为password时
<form>
<input type="password">
<button>提交</button>
</form>
解释:当type值为password时,一般用于密码框输入,所有的字符会显示星号,密码框也有一些额外属性。
属性名称 | 说明 |
---|---|
maxlength | 设置密码框最大字符长度 |
pattern | 用于输入验证的正则表达式 |
placeholder | 输入密码的提示 |
readonly | 密码框处于只读状态 |
disabled | 文本框处于禁用状态 |
size | 设置密码框宽度 |
value | 设置密码框初始值 |
required | 表明用户必须输入一个值 |
3、type为search时
<form>
<input type="search">
<button>提交</button>
</form>
4、type为number、range时
<form>
<input type="number">
<button>提交</button>
<br>
<input type="range">
<button>提交</button>
</form>
解释:只限输入数字的文本框,不通浏览器可能显示方式不同。生成一个数值范围文本框,只是样式是拖动式。额外属性如下:
list | 指定为文本框提供建议值的datalist元素,其值为datalist元素额id值 |
min | 设置可接受的最小值 |
max | 设定可接受的最大值 |
readonly | 设置文本框内容只读 |
required | 标明用户必须输入一个值,否则无法通过输入验证 |
step | 指定上下调节值的步长 |
value | 指定初始值 |
属性名称 | 说明 |
---|
①、最大值和最小值(min、max)
<form>
<input type="number" min="10" max="100">
<button>提交</button>
</form>
②、步长step
<form>
<input type="number" min="10" max="100" step="10">
<button>提交</button>
</form>
5、type为date系列时(谷歌支持)
<form>
<input type="date">
<button>提交</button>
<br>
<input type="month">
<button>提交</button>
<br>
<input type="time">
<button>提交</button>
<br>
<input type="week">
<button>提交</button>
<br>
<input type="datetime">
<button>提交</button>
<br>
<input type="datetime-local">
<button>提交</button>
<br>
</form>
解释:实现文本框可以获取日期和时间的值,但支持的浏览器不完整。我们测试Chrome和Opera支持,其他的浏览器尚未支持。所以,在获取日期和时间,目前还是推荐使用jQuery等前段库来实现日历功能。额外属性和number一致。
6、type为color时(谷歌,火狐支持)
<form>
<input type="color">
<button>提交</button>
</form>
解释:实现文本框获取颜色的功能,最新的现代浏览器测试后IE不支持,其余的都能显示一个颜色对话框提供选择;
7、type为checkbox、radio时
<form>
音乐<input type="checkbox" name="music" value="1">
体育<input type="checkbox" name="sport" value="2">
<button>提交</button>
<br>
<input type="radio" name="sex" value="男">男
<input type="radio" name="sex" value="女">女
<button>提交</button>
</form>
解释:生成一个获取布尔值的复选框或固定选项的单选框。额外属性如下:
属性名称 | 说明 |
---|---|
checked | 设置复选框、单选框是否为勾选状态 |
required | 表示用户必须勾选,否则无法通过验证 |
value | 设置复选框、单选框勾选状态时提交的数据。默认为on |
①、默认勾选,checked
<form>
音乐<input type="checkbox" name="music" value="1" checked>
体育<input type="checkbox" name="sport" value="2">
<button>提交</button>
</form>
②、value,默认值为on
<form>
<input type="radio" name="sex" checked>男
<input type="radio" name="sex" value="女">女
<button>提交</button>
<button>提交</button>
</form>
8、type为submit、reset和button时
<form>
<input type="submit">
<input type="reset">
<input type="button">
</form>
解释:生成一个按钮,三种模式:提交、重置和一般按钮,和< button > 元素相同。
submit | 生成一个提交按钮 |
reset | 生成一个重置按钮 |
button | 生成一个普通按钮 |
值名称 | 说明 |
---|
如果是submit时,还提供了和button元素一样的额外属性:formaction、formenctype、formmethod、formtarget和formnovalidate。
9、type为image时
<form action="http://www.baidu.com" target="_blank">
<input type="image" src="img.jpg">
</form>
解释:生成一个图片按钮,点击图片就实现提交功能,并且传送了分区响应数据。图片按钮也提供了一些额外属性。
src | 指定要显示图片的URL |
alt | 提供图片的文字说明 |
width | 图像的宽度 |
height | 图像的长度 |
提交额外属性 | formaction、formenctype、formmethod、formtarget和formnovalidate |
属性名称 | 说明 |
---|
10、type为email、tel、url时
<form action="http://www.baidu.com" target="_blank">
<input type="email" name="email">
<br>
<input type="tel" name="tel">
<br>
<input type="url" name="url">
<br>
<button>提交</button>
</form>
解释:email为电子邮件格式、tel为电话格式、url为网址格式。额外属性和text一致。但对于这几种类型,浏览器支持是不同的。email支持比较好,现在浏览器都支持格式验证;tel基本不支持;url支持一般,部分浏览器只要检测到http://就能通过。
11、type为hidden时
<form action="http://www.baidu.com" target="_blank">
<input type="hidden">
</form>
解释:生成一个隐藏控件,一般用于表单提交时关联主键ID提交,而这个数据作为隐藏存在。
12、type为file时
<form action="http://www.baidu.com" target="_blank">
<input type="file">
</form>
解释:生成一个文件上传控件,用于文件的上传。额外提供了一些属性。
accept | 指定接受的MIME类型 |
required | 标明用户必须提供一个值,否则无法通过验证 |
属性名称 | 说明 |
---|
<form action="http://www.so.com" target="_blank">
<input type="file" accept="image/gif,image/png,image/jpeg">
<button>提交</button>
</form>