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标签使用整理的更多相关文章

  1. HTML5 <Audio/>标签Api整理(二)

    1.实例2: 相对较完整 Html代码: <style> #volumeSlider .slider-selection { background:#bababa; } </styl ...

  2. HTML基本结构与标签总结整理篇

    HTML基本结构与标签总结整理篇 前言:这是笔者的学习总结与整理,如果有错误或疑问的地方,欢迎指正与讨论!另:此文会不定时更新~ 1.了解HTML 学习前端技术,必然涉及三个方面:html(结构).c ...

  3. 关于input标签和placeholder在IE8,9下的兼容问题

    一. input常用在表单的输入,包括text,password,H5后又新增了许多type属性值,如url, email, member等等,考虑到非现代浏览器的兼容性问题,这些新的type常用在移 ...

  4. angular input标签只能单向传递数据的问题

    angularjs input标签只能单向传递数据的问题 <ion-view title = "{{roomName}}" style = "height:90%; ...

  5. 全面剖析 <input> 标签 ------ HTML\HTML5

    <input>标签因其形式多样.功能强大,当之无愧成为了WEB前端开发人员最钟爱的元素之一.下面就来对<input>做一个全面的剖析: 标签定义: <input> ...

  6. input标签file的value属性IE兼容性问题

    在IE中input标签file的value属性是只读的,不能通过js来改变,如下代码在IE中就是无效的: var input = document.getElementById('file'); in ...

  7. 一个input标签搞定含内外描边及阴影的按钮~

    自从怀孕以来,我就变得很是轻松,偶尔写一两个页面,或者偶尔调试一个两个bug,或者偶尔给做JS的同事打打下手,修改个bug什么......一个习惯于忙碌的工作的人,这一闲下来,感觉还真TM很不舒服-怎 ...

  8. 控制input标签中只能输入数字以及小数点后两位

    js 代码如下: /* 控制input标签中只能输入数字 和小数点后两位 */ function checkNum(obj) { //检查是否是非数字值 if (isNaN(obj.value)) { ...

  9. 一个解决chrome浏览器下input标签当autocomplete的时候背景变黄色同时input背景图片消失方案

    最近在改一个bug即如标题所讲的一样,chrome浏览器下当input标签开启autocomplete的时候input的背景颜色变黄同时在input的背景图片也被覆盖了.为此百度了好久发现网上说的使用 ...

随机推荐

  1. 从Linux上传到Git过程

    1.1 实验内容 本次课程讲的是在实验楼的在线环境中,如何使用 Github 去管理在在线环境中使用的代码.配置.资源等实验相关文件,怎样去添加.同步和下拉在远程仓库中的实验文件,以此来维持自身的实验 ...

  2. <jsp:useBean>、<jsp:setProperty>与<jsp:getProperty>

    <jsp:useBean>标签 会调用java对象的无参构造方法,来创建实例. <jsp:useBean>标签是用来搭配JavaBean元件的标准标签,这里指的JavaBean ...

  3. 自动给 Asp.Net Core WebApi 增加 ApiVersionNeutral

    自动给 Asp.Net Core WebApi 增加 ApiVersionNeutral Intro 新增加一个 Controller 的时候,经常忘记在 Controller 上增加 ApiVers ...

  4. 容器化系列 - GitLab启动和配置 on Docker

    本文简单说明了如何在Docker容器中运行GitLab. 1 准备工作 1.1 下载镜像 $ docker pull docker.io/gitlab/gitlab-ce:latest 1.2 创建持 ...

  5. linux $参数

    $# 是传给脚本的参数个数 $0 是脚本本身的名字 $1 是传递给该shell脚本的第一个参数 $2 是传递给该shell脚本的第二个参数 $@ 是传给脚本的所有参数的列表 $* 是以一个单字符串显示 ...

  6. [20190415]10g下那些latch是共享的.txt

    [20190415]10g下那些latch是共享的.txt http://andreynikolaev.wordpress.com/2010/11/23/shared-latches-by-oracl ...

  7. sqlserver常用数据类型(精炼版)

    一:系统数据类型 2.浮点数据类型 3.字符数据类型 4.日期和时间数据类型 5.文本和图形数据类型 6.货币数据类型 7.位数据类型 8.二进制数据类型 9.其他数据类型 二:自定义数据类型   数 ...

  8. SQL Server数据库————连接查询和分组查询

    SQL Server数据库————连接查询和分组查询 分组查询 select 列from  <表名> where  …… group by  列 注意:跟order  by一样group ...

  9. SQLServer之修改视图

    修改视图注意事项 修改先前创建的视图. 其中包括索引视图. ALTER VIEW不影响相关的存储过程或触发器,并且不会更改权限. 如果原来的视图定义是使用 WITH ENCRYPTION 或 CHEC ...

  10. 网络威胁实时地图(CyberThread Real-time Map)

    今天跟大家分享一下网络威胁实时地图(CyberThread Real-time Map),从地图上可以看出目前网络威胁情况数据. 点击打开网络威胁实时地图 可以点击demo on/off来看演示.可以 ...