HTML的笔记及展示(2)(表单元素、input元素、label、button以及HTML5新增的一些元素)

简介: HTML的笔记及展示(2)(表单元素、input元素、label、button以及HTML5新增的一些元素)

一、HTML原有的表单与表单控件


1.<form…/>元素

用于生成输入表单,该元素不会生成可视化部分。如单行文本框、多行文本框、单选按钮、复选框等都需要放在<form…/>元素内


form元素的重要属性:


action:指定当单击表单内的"确认"按钮时,该表单被提交到哪个位置。该属性必 填。

method:指定提交表单时发送何种类型的请求,该属性可为get或post。该属性必填。action、method用法如下:

<form action="http://39.106.170.146/html/summary/summary01.html" 
method="post"></form>

下面我们看一下GET请求和POST请求的区别:

GET请求:直接在浏览器地址栏中输入访问地址所发送的请求,可以看到请求参数名和值,且相对传送数据量较小。

20181223174036557.png


POST请求:通常使用提交表单的方式发送,且不会在浏览器地址栏中显示发送的数据,比较安全,传送数据量较大。

20181223173638139.png


可以看出get请求可以看到网址后面的数据,而post请求看不到,这样post请求就相对更安全,所以建议用post请求。


2.input元素

单行文本框:指定<input…/>元素的type属性为text即可。

密码输入框:指定<input…/>元素的type属性为password即可。

隐藏域:指定<input…/>元素的type属性为hidden即可。

单选框:指定<input…/>元素的type属性为radio即可。

复选框:指定<input…/>元素的type属性为checkbox即可。

图像域:指定<input…/>元素的type属性为image即可。可指定width和height。

文件上传域:指定<input…/>元素的type属性为file即可。

提交、重设、无动作按钮:分别指定<input…/>元素的type属性为submit、reset或batton即可。

checked:设置单选框、复选框初始状态是否处于选中状态。该属性是支持boolean值的属性,表示初始即被选中。

disable:设置首次加载时禁用此元素,该属性是支持boolean值的属性,当type=“hidden”是不能指定该属性。

maxlength:该属性值是一个数字,指定文本框中所允许输入的最大字符数。

readonly:指定该文本框内的值不允许用户修改。该属性是支持boolean值的属性,表示该元素的值是只读的。


实例代码如下:


  单行文本框:<input id="username" name="username" type="text"/><br/>
  不能编辑的文本框:<input id="usename" name="usename" type="text" 
          readonly="readonly"/>
  密码框:<input id="password" name="password" type="password" />
  隐藏域:<input id="hidden" name="hidden" type="hidden"/></br>
  第一组单选框:<br/>
  红:<input id="color" name="color" type="radio" value="red"/>
  绿:<input id="color2" name="color" type="radio" value="green"/>
  蓝:<input id="color3" name="color" type="radio" value="blue"/><br/>
  第二组单选框:<br/>
  男性:<input id="gender" name="gender" type="radio" value="male"/>
  女性:<input id="gender2" name="gender" type="radio"
       value="female"/><br/>
  两个复选框:<br/>
  <input id="website" name="website" type="checkbox"
    value="leegang.org"/>
  <input id="website2" name="website" type="checkbox"
    value="crazy.org"/><br/>
  文件上传域:<input id="file" name="file" type="file"/><br/>
  图像域:<input type="image" src="../2018.12.17/denglu/weichat_0.jpg"
      alt="登录背景图" width="340" height="210"/><br/>
  下面是四个按钮:<br/>
  <input id="ok" name="ok" type="submit" value="提交"/>
  <input id="dis" name="dis" type="submit" value="提交" disabled />
  <input id="cancel" name="cancel" type="reset" value="重填"/>
  <input id="no" name="no" type="button" value="无动作"/>
  <button type="button">提交</button><br/>
  <button type="submit"><img src="../2018.12.17/denglu/weichat_0.jpg"
   width="340" height="210" alt="登录背景图"/>

3.使用label定义标签


<label…/>元素用于在表单元素中定义标签,它有一个额外作用:当用户单击<label…/>所生成的标签时,该标签关联的表单控件元素就会获得焦点。


  隐式使用for属性:<label for="username">单行文本框:</label>
  <input id="username" name="username" type="text"/><br/>
  显式关联:<label>密码框:<input id="password" name="password" 
      type="password" /></label>

4.使用button定义按钮


<button…/>元素用于定义一个按钮,该元素内部可以包含普通文本、文本格式化标签、图像等内容,这也是与input按钮的不同。


<button type="button">提交</button><br/>

5.select与option元素


select元素里只能包含如下两种子元素:


option:用于定义列表框选项或菜单项。(只能包含文本内容作为选项文本)

<optgroup…/>:用于定义列表项或菜单项组。该元素只能包含<option…/>子元素。


select元素里指定的一些属性:


disable:设置禁用该列表框和下拉菜单。

multiple:设置该列表框和下拉菜单是否允许多选。(支持boolean属性)

size:指定该列表框内可同时显示多少个列表项。一旦指定该属性,select元素就自动生成列表框。

option元素里指定的一些属性:

disable:指定禁用该选项。

selected:指定该列表项初始状态是否处于被选中状态。

value:指定该选项对应的请求参数值。


代码示例如下:

下面是简单下拉菜单:<br/>
    <select id="skills" name="skills">
      <option value="java">java语言</option>
      <option value="c">C语言</option>
      <option value="ruby">ruby语言</option>
    </select><br/><br/><br/>
    下面是允许多选的列表框:<br/>
    <select id="books" name="books"
      multiple="multiple" size="4">
      <option value="java">疯狂java讲义</option>
      <option value="android">疯狂Android讲义</option>
      <option value="ee">轻量级java ee企业应用实战</option>
    </select><br/>


二、HTML5新增的表单属性


1.form属性

HTML5为表单控件新增了form属性,用于定义该表单控件所属的表单,该属性值应该是它所属表单的id。


2.formaction属性

一个页面中有多个按钮,需要提交给不同的处理逻辑,formation属性可动态的让表单提交到不同的URL解决了这一问题。


3.formxxx属性

formxxx属性是一些与formaction相似的属性,这里不做赘述


4.autofocus属性

当为某个表单控件增加该属性后,浏览器打开该页面是该组件就会自动获得焦点,并且最多只能有一个表单控件可设置该属性。


5.placeholder属性

在输入文本域地方显示对用户的提示信息


代码示例如下:


用户名:<input type="text" name="name" autofocus placeholder="请输入用户姓名" /><p>
密码:<input type="password" name="name" placeholder="请输入密码"/><p>`

20181224111630916.png


6.list属性


list属性既允许用户输入,也允许用户通过下拉菜单进行选择,该属性必须与<datalist…/>元素结合使用。


代码示例如下:

<datalist id="books">
    <option value="java">疯狂Java讲义</option>
    <option value="ee">轻量级 Java EE</option>
    <option value="android">Android</option>
</datalist>

20181224112247819.png


三、HTML5新增的表单元素


1.功能丰富的input元素


type属性值新增的类型:

color:颜色选择器。date:日期选择器。time:时间选择器。datetime-local:本地日期、时间选择器。week:供用户选择第几周的文本框。month:月份选择器

type属性值的<input…/>元素额外支持的属性:

min:指定日期、时间的最小值。max:指定日期、时间的最大值。step:指定日期、时间的步长。email:让input元素生成一个E-mail输入框。tel:input生成一个只能输入电话号码的文本框。url:让input元素生成一个URL输入框。search:让input元素生成一个专门用于输入搜索关键字的文本框等20181224113904155.png


见如下代码示例:


type="color"的文本框:<br/><input name="color" type="color"/><p>
type="date"的文本框:<br/><input name="date" type="date"/><p>
type="time"的文本框:<br/><input name="time" type="time"/><p>
type="datetime-local"的文本框:<br/><input name="datetime-local" 
                type="datetime-local"/><p>
type="month"的文本框:<br/><input name="month" type="month"/><p>
type="week"的文本框:<br/><input name="week" type="week"/><p>
type="email"的文本框:<br/><input name="email" type="email" multiple/><p>
type="tel"的文本框:<br/><input name="tel" type="tel"/><p>
      <!--pc浏览器不会不通过-->
type="url"的文本框:<br/><input name="url" type="url"/><p>
type="number"的文本框:<br/><input name="number" type="number" min="0"
           max="100" step="5"/><p>
type="range"的文本框:<br/><input name="range" type="range" min="0" 
          max="100" step="5"/><p>
type="search"的文本框:<br/><input name="search" type="search"/><p>  


20181224113904155.png



四、HTML5新增的客户端校验


1.使用校验属性执行校验

HTML5为表单控件新增了如下几个校验属性

required:该属性指定该表单控件必须填写。

pattern:该属性指定该表单控件的值必须符合指定的正则表达式。


代码示例如下:

图书名:<input name="name" type="text" required/><br/>
    图书ISBN:<input name="isbn" type="text"
      required pattern="\d{3}-\d-\d{3}-\d{5}"/><br/>
    图书价格:<input name="price" type="number"
      min="20" max="150" step="5"/><br/>
    <input value="提交" type="submit"/> 

20181224115332505.png


2.调用checkValidity方法进行校验

用对话框弹出错误提示

以上方法代码示例如下:

<form action="add" method="post">
    生日:<input id="birth" name="birth" type="date"/><p>
    邮件地址:<input id="email" name="email" type="email"/><p>
    <input type="submit" value="提交" onclick="return check();"/> 
</form>
  <script type="text/javascript">
    var check = function()  {
      return commonCheck("birth" , "生日" , "字段必须是有效的日期!")
      && commonCheck("email" , "邮件地址" , "字段必须符合电子邮件格式!");
    }
    var commonCheck = function(field , fieldName , tip){
      var targetEle = document.getElementById(field);
      //如果该字段的值为空
      if (targetEle.value.trim() == "") {
        alert(fieldName + "字段必须填写!");
        return false;
      }
      //调用checkValidity()方法执行输入校验
      else if(!targetEle.checkValidity()){
        alert(fieldName + tip);
        return false;
      }
      return true;
    }
  </script>

20181224115405463.png

20181224115425710.png


以上是近期总结,只有经常练习使用这些元素,才能熟练掌握.

目录
相关文章
|
1月前
|
前端开发 JavaScript C++
震惊!!!html竟然被...... 一篇博客让你从0开始熟悉并掌握html 超详细html笔记 全网独一份
本文是一份超详细的HTML学习笔记,从基础认知开始,介绍了网页的构成、五大浏览器、web标准、HTML/CSS/JavaScript的区别,然后详细讲解了HTML的概念、骨架结构、常用快捷键、注释、标签结构和关系。接着,通过大量实例深入探讨了HTML的各种标签,包括排版标签、文本格式化标签、媒体标签、链接标签、列表标签、表格标签、表单标签、语义化标签和字符实体,旨在帮助读者从0开始熟悉并掌握HTML。
35 2
震惊!!!html竟然被...... 一篇博客让你从0开始熟悉并掌握html 超详细html笔记 全网独一份
WK
|
1月前
|
存储 移动开发 前端开发
HTML5新增了哪些其他元素和属性
这段文字介绍了HTML5中新增的多种元素和属性,包括页面布局元素如header、nav等,表单元素如email、tel输入框等,以及其他元素如canvas、svg等。此外,还介绍了全局及表单属性,例如contenteditable、placeholder等,这些新功能显著增强了HTML5在现代网页设计与开发中的实用性与灵活性。
WK
48 1
|
17天前
HTML 元素
HTML文档由HTML元素定义,元素包括开始标签、内容和结束标签。某些元素内容为空,可在开始标签中关闭。大多数元素可拥有属性,且元素间可相互嵌套,形成复杂结构。
WK
|
1月前
|
Web App开发 存储 移动开发
HTML5新增了哪些表单元素
HTML5通过新增多种表单元素和属性,提升了用户体验与交互性。例如,`email`和`url`元素分别验证邮箱地址和网址格式;`number`和`range`便于输入数字及区间值;`date`等元素简化了日期时间的选择;`search`添加搜索图标,`color`提供颜色选择器;`datalist`结合`input`属性给予用户下拉列表选项;`keygen`用于生成密钥对以增强安全性;`output`则用于动态展示计算结果。这些改进共同提高了表单的功能性和易用性。
WK
24 2
|
30天前
|
数据采集 数据安全/隐私保护
html常见的表单元素有哪些,html表单元素有哪些?
html常见的表单元素有哪些,html表单元素有哪些?
15 0
|
1月前
|
JavaScript 前端开发
DOM的概念?获取html元素的方法有哪些?
DOM的概念?获取html元素的方法有哪些?
28 0
|
4天前
|
移动开发 前端开发 JavaScript
[HTML、CSS]细节与使用经验
本文总结了前端开发中的一些重要细节和技巧,包括CSS选择器、定位、层级、全局属性、滚轮控制、轮播等。作者以纯文字形式记录,便于读者使用<kbd>Ctrl + F</kbd>快速查找相关内容。文章还提供了示例代码,帮助读者更好地理解和应用这些知识点。
22 1
[HTML、CSS]细节与使用经验
|
6天前
|
移动开发 前端开发 JavaScript
[HTML、CSS]知识点
本文涵盖前端知识点扩展、HTML标签(如video、input、canvas)、datalist和details标签的使用方法,以及CSS布局技巧(如margin、overflow: hidden和动态height)。文章旨在分享作者的学习经验和实用技巧。
17 1
[HTML、CSS]知识点
|
1月前
|
前端开发 JavaScript 搜索推荐
打造个人博客网站:从零开始的HTML和CSS之旅
【9月更文挑战第32天】在这个数字化的时代,拥有一个个人博客不仅是展示自我的平台,也是技术交流的桥梁。本文将引导初学者理解并实现一个简单的个人博客网站的搭建,涵盖HTML的基础结构、CSS样式的美化技巧以及如何将两者结合来制作一个完整的网页。通过这篇文章,你将学会如何从零开始构建自己的网络空间,并在互联网世界留下你的足迹。
|
1天前
|
移动开发 JavaScript 前端开发
html table+css实现可编辑表格的示例代码
html table+css实现可编辑表格的示例代码