Input标签使用整理
0 写在前面
对于程序而言I/O是一个程序的重要组成部分。程序的输入、输出接口,指定了程序与用户之间的交互方式。对于前端开发而言,input标签也有着其重要地位,它为用户向服务端提交数据提供了可能。
今天通过此博客来整理一下HTML与HTML5中的各种input标签的type类型以及其常用方法。
1 代码整理
1-1 表单提交
为了能够让input的数据表单内容成功提交到指定的url中,需要在input的外面套一层<form action=“#”> </form>。
其中,action后面填写的值为目的url。
1-2 HTML原有type类型
复选框checkbox:通过value的值来进行分组,在组内可以复选。
单选框radio:通过name值分组,组内选项互斥。单选框和复选框通常都搭配label使用,label的for通常与选项中的id相对应,这样鼠标点选范围更大,可以点击文字标签进行选择。
密码password:输入内容不显示给用户,在3-1节中会讲到如何显示密码。
上传文件file:可以从用户本地选择文件进行上传。
提交submit:将上述填写完毕的表单提交。
重置reset:将上述填写的内容重置成初始状态。
图片image:用src将一张图片放置在页面上,将提交鼠标点击该图片的坐标位置。
<form action="#">
<!-- HTML原有的type类型 -->
兴趣爱好:
<input type="checkbox" id="阅读" value="提交">
<label for="阅读">阅读</label>
<input type="checkbox" id="写作" value="提交">
<label for="写作">写作</label>
<input type="checkbox" id="写代码" value="提交">
<label for="写代码">写代码</label>
<br>
性别:
<input type="radio" name="sex" id="male"><label for="male">男</label>
<input type="radio" name="sex" id="female"><label for="female">女</label>
<br>
密码:
<input type="password" id="pwd">
<span id="showPwd">显示密码</span>
<br>
上传照片:
<input type="file" name="img">
<br>
<input type="hidden" name="avitor" id="1">
<br>
<input type="submit" id="submit">
<input type="reset" value="重置">
<!-- 可以点击图片,将点击位置传到后端 -->
<input type="image" src="./PopStars/pic/0.png">
</form>
1-3 H5新增type类型
上传时间date/time/week/datetime-local:用于选择时间。
数字number:会检查输入,只有有效的数字值才能被输入。
邮箱email:会检查输入,只有有效的邮箱地址才能被提交。
链接url:会检查输入,只有有效的网址才能被提交。
颜色color:可以输入颜色。
搜索search:可以记忆搜索历史。
- 范围range:通过min max设置范围数值。
<form action="#">
选择时间:
<input type="date">
<input type="time">
<input type="week">
<input type="datetime-local">
<br>
输入学号:
<input type="number" name="number">
<br>
输入邮箱:
<input type="email" name="email">
<br>
选择颜色:
<input type="color" name="color">
<br>
输入链接:
<input type="url">
<br>
搜索内容:
<input type="search" name="search">
<input type="submit" value="search">
<br>
输入范围:
<input type="range" min="0" max="100" name="range">
</form>
1-4 注意事项
注意对于每项输入而言,需要为该元素设置一个name来标识。这是为了在提交表单数据的时候,能有效的定位到是哪个部分的输入了什么类型的数据值。
2 浏览器兼容情况

表格数据来源于w3school。由于浏览器技术发展迅速,现在一些浏览器的新版本已经可以支持上述的部分type类型了。
3 与JS交互
3-1 显示密码
为了实现密码显示功能,很简单,首先为显示密码的容器增加一个id,用JS为其绑定一个鼠标点击事件,当触发点击事件时,为密码input的类型由password改成text即可完成显示。
<script>
showPwd.onclick = function(e){
pwd.type = 'text';
}
</script>
3-2 禁用默认的提交功能
两种方法,一是为点击事件return false; 二是为原对象e加上e.preventDefault()方法。
<script>
var submitBtn = document.getElementById('submit');
submitBtn.onclick = function(e){
console.log(pwd.value);
e.preventDefault();
return false;
}
</script>
Input标签使用整理的更多相关文章
- HTML5 <Audio/>标签Api整理(二)
1.实例2: 相对较完整 Html代码: <style> #volumeSlider .slider-selection { background:#bababa; } </styl ...
- HTML基本结构与标签总结整理篇
HTML基本结构与标签总结整理篇 前言:这是笔者的学习总结与整理,如果有错误或疑问的地方,欢迎指正与讨论!另:此文会不定时更新~ 1.了解HTML 学习前端技术,必然涉及三个方面:html(结构).c ...
- 关于input标签和placeholder在IE8,9下的兼容问题
一. input常用在表单的输入,包括text,password,H5后又新增了许多type属性值,如url, email, member等等,考虑到非现代浏览器的兼容性问题,这些新的type常用在移 ...
- angular input标签只能单向传递数据的问题
angularjs input标签只能单向传递数据的问题 <ion-view title = "{{roomName}}" style = "height:90%; ...
- 全面剖析 <input> 标签 ------ HTML\HTML5
<input>标签因其形式多样.功能强大,当之无愧成为了WEB前端开发人员最钟爱的元素之一.下面就来对<input>做一个全面的剖析: 标签定义: <input> ...
- input标签file的value属性IE兼容性问题
在IE中input标签file的value属性是只读的,不能通过js来改变,如下代码在IE中就是无效的: var input = document.getElementById('file'); in ...
- 一个input标签搞定含内外描边及阴影的按钮~
自从怀孕以来,我就变得很是轻松,偶尔写一两个页面,或者偶尔调试一个两个bug,或者偶尔给做JS的同事打打下手,修改个bug什么......一个习惯于忙碌的工作的人,这一闲下来,感觉还真TM很不舒服-怎 ...
- 控制input标签中只能输入数字以及小数点后两位
js 代码如下: /* 控制input标签中只能输入数字 和小数点后两位 */ function checkNum(obj) { //检查是否是非数字值 if (isNaN(obj.value)) { ...
- 一个解决chrome浏览器下input标签当autocomplete的时候背景变黄色同时input背景图片消失方案
最近在改一个bug即如标题所讲的一样,chrome浏览器下当input标签开启autocomplete的时候input的背景颜色变黄同时在input的背景图片也被覆盖了.为此百度了好久发现网上说的使用 ...
随机推荐
- linux下的QT打包方法
一句话很简单,一个shell脚本搞定,不跟你嘻嘻哈哈 #!/bin/shexe="ThorIceLocker"#存放你的可执行文件的名字des="/home/ninetr ...
- SpringMVC从认识到细化了解
目录 SpringMVC的介绍 介绍: 执行流程 与strut2的对比 基本运行环境搭建 基础示例 控制器的编写 控制器创建方式: 请求映射问题: 获取请求提交的参数 通过域对象(request,re ...
- Python模块time、datetime
模块: 模块是一系列常用功能的集合体,一个py文件就是一个模块. 一.模块的作用: 1.从文件级别组织程序,方便管理,随着程序的发展,功能越来越多,我们通常将程序分成一个个py文件,这样做程序的结构更 ...
- MySQL 数据表创建及管理
use stuinfo; -- 指定当前数据库 CREATE table if not exists student1( -- 创建数据表student1 sNo ) not NULL, sName ...
- Python中的一些小技巧
1.Boolean值可以当做一个数值 a = [5,6,7,8,9] print(a[True]) #prints 6 print(a[False]) #prints 5 2.两种方法实现 a = 1 ...
- css_选择器
老师的博客:https://www.cnblogs.com/liwenzhou/p/7999532.html 参考w3 school:http://www.w3school.com.cn/css/cs ...
- Too many open files问题解决
项目运行过程出现如下问题 经查询,找出原因,并进行解决 具体原因如下: too many open files(打开的文件过多)是Linux系统中常见的错误,从字面意思上看就是说程序打开的文件数过多, ...
- mysql partition分区
(转) 自5.1开始对分区(Partition)有支持 = 水平分区(根据列属性按行分)=举个简单例子:一个包含十年发票记录的表可以被分区为十个不同的分区,每个分区包含的是其中一年的记录. === 水 ...
- web框架开发-Django组件cookie与session
http协议的每一次都是无保存状态的请求,这会带来很多的不方便,比如,一刷新网页,或者进入该网页的其他页面,无法保存之前的登录状态.为了解决类似这样的问题,引入了会话跟踪 会话跟踪技术 1 什么是会话 ...
- spring boot拦截器中获取request post请求中的参数(转)
文章转自 https://www.jianshu.com/p/69c6fba08c92