input表单的type属性详解,不同type不同属性之间区别
目标:详解表单input标签type属性常用的属性值
一、input标签和它的type属性
PS:input 元素可以用来生成一个供用户输入数据的简单文本框。 在默认的情况下, 什么样的数据均可以输入。而通过不同的type属性值,可以限制输入的内容。
二、总结
1、text 一个单行文本框,默认属性值
2、password 隐藏字符的密码框
3、search 搜索框,在某些浏览器中输入内容会出现叉形标记
4、submit、reset、button 依次是:提交按钮、重置按钮、普通按钮
5、number、range 依次是:只能输入数值的框、只能输入在一个指定范围的数值框
6、checkbox、radio 依次是:复选框,一组复选框(name属性值相同)用户可以勾选多个、单选按钮,一组单选按钮(name属性值相同)用户只可以选中一个
7、image、color 依次是:图片按钮、颜色代码按钮
8、email、tel、url 依次是:检测电子邮件、号码、网址的文本框
9、hidden 生成一个隐藏控件
10、file 生成一个上传控件
11、获取各种日期、时间 data、month、time、week、datetime、datatime-local
三、详解
1、type=”text”
1.1)、list 指定为文本框提供建议值的 datalist 元素,其值为datalist 元素的 id 值
1.2)、maxlength 设置文本最大字符长度
1.3)、pattern 用于输入验证的正则表达式
1.4)、placeholder 输入提示的文本,当用户输入内容时会自动消失
1.5)、readonly 文本框处于只读状态
1.6)、disabled 文本框处于禁用状态
1.7)、size 设置文本框宽度
1.8)、value 设置文本框初始值,会显示在文本框中,显示时优先级比placeholder高,表单提交时优先提交用户输入的内容,如果用户没有输入则提交默认的值
1.9)、required 表示用户必须输入一个值,否则无法通过输入验证
2、type=”password”,和type=”text”时所拥的额外属性基本一致,少了一个list属性
3、type=”search” , 和type=”text”所有用的额外属性值一致
4、当type为submit、reset、button,提交表单、重置表单、普通按钮
4.1)、如果是 submit 时,还提供了和元素一样的额外属性:formaction、formenctype、formmethod、formtarget 和 formnovalidate。
5、当type为number、range时
5.1)、type=”number” 只能输入数字的文本框
5.2)、type=”range” 生成一个通过拖拽调节大小的调节器
额外属性:
5.3)、min 设置可接受的最小值
5.4)、max 设定可接受的最大值
5.5)、value 指定初始值
5.6)、step 指定上下调节值的步长
5.7)、required 表明用户必须输入一个值,否则无法通过输入验证
5.8)、readonly 设置文本框内容只读
6、当type为checkbox、radio
6.1)、不管type等于checkbox还是radio,都必须有属性name和value
6.2)、他们还有可选属性checked、required
PS:复选框和单选按钮都是以一组一组的形式存在,name值相同的即为一组,一组复选框可以同时选中几个,而一组单选按钮同时只能选中一个
<section>
<label for="c">C</label> <input type="checkbox" id="c" name="hobby" value="c"/>
<label for="python">python</label> <input type="checkbox" id="python" name="hobby" value="python"/>
<label for="java">java</label> <input type="checkbox" id="java" name="hobby" value="java"/>
</section>
<section>
<label for="apple">apple</label> <input type="checkbox" id="apple" name="eat" value="apple"/>
<label for="orange">orange</label> <input type="checkbox" id="orange" name="eat" value="orange"/>
<label for="pear">pear</label> <input type="checkbox" id="pear" name="eat" value="pear"/>
</section>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
提交时数据格式:hobby=c&hobby=python&eat=orange&eat=pear
- 1
- 2
<section>
<label for="man">男</label> <input type="radio" id="man" name="sex" value="man"/>
<label for="men">女</label> <input type="radio" id="men" name="sex" value="men"/>
</section>
- 1
- 2
- 3
- 4
提交时数据格式:sex=man
- 1
- 2
7、当type为image、color
7.1)、当type=”image”时,功能上和type=”submit”一样,前者是用图片作为按钮,当然后者也可以达到同样的效果
额外属性:
7.2)、src 指定要显示图像的 URL
7.3)、alt 提供图片的文字说明,当图片找不到时显示该文字
7.4)、width 图像的长度,注意这是标签属性,而不是样式属性
7.5)、height 图片的高度,注意事项如上
7.6)、提交时的额外属性 formaction、formenctype、formmethod、formtarget和 formnovalidate。
8、当type为email、tel、url
8.1)、email 为电子邮件格式
8.2)、tel 为电话格式
8.3)、url 为网址格式
8.4)、额外属性和 text一致。但对于这几种类型,浏览器支持是不同的。email 支持比较好,现在浏览器都支持格式验证;tel 基本不支持;url 支持一般,部分浏览器只要检测到 http://就能通过。
9、type=”hidden”
9.1)、生成一个隐藏控件,一般用于表单提交时关联主键 ID 提交,而这个数据作为隐藏存在
10、type=”file”
10.1)、生成一个文件上传控件,用于文件的上传。
额外属性:
10.2)、required 表明用户必须提供一个值,否则无法通过验证
10.3)、accept 指定接收的MIME类型 例如:accept=”image/gif, image/jpeg, image/png”
《1》上传.csv格式的
<input text="file" accept=".csv" />
《2》上传.xls格式
<input text="file" accept="application/vnd.ms-excel"/>
《3》上传.xslx格式
<input text="fiel" accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"/>
《4》上传.png/.jpg/etc格式
<input type="file" accept="text/plain" />
《5》上传图片格式
<input type="file" accept="image/*" />
《6》上传.htm,.html格式
<input type="file" accept="text/html" />
《7》上传video(.avi, .mpg, .mpeg, .mp4)格式
<input type="file" accept="video/*" />
《8》上传audio(.mp3, .wav, etc)格式
<input type="file" accept="audio/*" />
《9》上传.pdf格式
<input type="file" accept=".pdf" />
《10》如果限制两种文件格式,同时限制
<input type="file" accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel">
PS:当需要上传文件时,form标签的enctype属性必须设置为multipart/form-data
11、当type为data、month、time、week、datetime、datatime-local,因为各种原因还是用jquery等前端库写吧!!!
input表单的type属性详解,不同type不同属性之间区别的更多相关文章
- Jquery ajax提交表单几种方法详解
[导读] 在jquery中ajax提交表单有post与get方式,在使用get方式时我们可以直接使用ajax 序列化表单$( 表单ID) serialize();就行了,下面我来介绍两个提交表单数据的 ...
- JavaScript表单序列化的方法详解
本文介绍下,在javascript中实现表单序列化的方法,通过实例加深理解,有需要的朋友参考下吧. 在JavaScript中,可以利用表单字段的type属性,连同name和value属性一起实现对表单 ...
- AngularJS表单验证实现方法详解
本文主要是通过源码实例和大家分享AngularJS中的表单验证相关知识,希望通过本文的分享,对大家学习AngularJS有所帮助. 1.常规表单验证: 2.AngularJs中提供的表单验证实例. 实 ...
- a链接易混淆与form表单简易验证用法详解
链接可以说遍布互联网,比如你想提供一个可以跳转到百度首页的链接给网友,那么代码如下: <a href="http://www.baidu.com">百度一下,你就知道& ...
- Android组件---四大布局的属性详解
[声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4372222.html Android常见布局有下面几种: LinearL ...
- CSS中background属性详解
CSS背景属性 background css 说明 background-image:url(图片的网址); 背景图 background: url( 图片的网址 ); 背景 background-c ...
- input type类型和input表单属性
一.input type类型 1.Input 类型 - email 在提交表单时,会自动验证 email 域的值. E-mail: <input type="email" n ...
- 兼容IE8以下浏览器input表单属性placeholder不能智能提示功能
当前很多表单提示使用了表单属性placeholder,可这属性不兼容IE8以下的浏览器,我自己写了一个兼容处理js // 兼容IE8以下浏览器input不能智能提示功能 if(navigator.ap ...
- jQuery Event.which 属性详解
jQuery Event.which 属性详解 which属性用于返回触发当前事件时按下的键盘按键或鼠标按钮. 对于键盘和鼠标事件,该属性用于确定你按下的是哪一个键盘按键或鼠标按钮. which属性对 ...
- OutputCache属性详解(四)— SqlDependency
目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...
随机推荐
- java_抽象类
抽象类1,语法定义抽象类前使用abstract关键字修饰,则该类为抽象类2.应用场景(1)在某些情况下,某个父类只是知道其子类应该包含怎样的方法,但无法准确知道这些子类如何实现这些方法. (2)从多个 ...
- intelliJ IDEA自动优化导入包设置
Settings→Editor→General→Auto Import 选中Optimize imports on the fly和Add unambiguous imports on the fly ...
- jspsmart(保存文件)+poi(读取excel文件)操作excel文件
写在前面: 项目环境:jdk1.4+weblogic 需求:能上传excel2003+2007 由于项目不仅需要上传excel2003,还要上传excel2007,故我们抛弃了jxl(只能上传exce ...
- SQL_Server 常用语句以及语法整理
下列语句部分是Mssql语句,不可以在access中使用. SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE, ...
- 链接文本在a标签内标签里也可以用driver.find_element_by_link_text
如: 也可用driver.find_element_by_link_text("账户登录").click()
- Linux文件系统概述
Unix文件是以字节序列组成的信息载体(container),内核不解释文件的内容. Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有系统的结构,所有Linux用户和程序 ...
- layui动态设置下拉框数据,根据后台数据设置选中
追加下拉框数据: 设置默认选中: 正常的判断这种情况是不行的,因为追加出的数据,在前台显示的并不是同一个下拉框,原来的下拉框被隐藏了 因此需要:根据原来的位置,寻找下一个节点,寻找子节点的方式找到相应 ...
- table常用的属性以及用法
<table><table/>先定义一个表格这个就没得讲了,<caption>表示这个表格的标题 <table border="6"> ...
- ES6中Promise对象个人理解
Promise是ES6原生提供的一个用来传递异步消息的对象.它减少了传统ajax金字塔回调,可以将异步操作以同步操作的流程表达出来使得代码维护和可读性方面好很多. Promise的状态: 既然是用来传 ...
- 1-MySQL数据库(android连接MySQL数据库)
很好的链接 http://www.cnblogs.com/best/p/6517755.html 一个小时学会MySQL数据库 http://www.cnblogs.com/klguang/p/47 ...