【六六互联】长期出售【美国抗投诉服务器】【欧洲抗投诉服务器】【亚洲抗投诉服务器】
2022/08/11/ - - 0 条评论

 Input元素的其他属性

除了type属性之外,<input/>标记还可以定义很多其他的属性,以实现不同的功能。

1.autofocus属性

在HTML5中,autofocus属性用于指定页面加载后是否自动获取焦点,将标记的属性值指定为true时,表示页面加载完毕后会自动获取该焦点。

下面通过案例2-39来演示autofocus属性的使用,如图2-40所示。

例2-39  example39.html

 

<!DOCTYPE  html>
 <html>
 <head>
     <meta  charset="utf-8">
     <title>autofocus
属性的使用</title>
 </head>
 <body>
 <form action="#" method="get">
     请输入搜索关键词:
     <input type="text"  name="user_name"    autocomplete="off"    autofocus="true"/><br/>
     <input type="submit"  value="提交" />
 </form>
 </body>
 </html>

Input元素的其他属性

                        图2-40  autofocus属性的使用 

Input元素的其他属性

                               图2-41 form属性的使用

从图2-40可以看出,<input />元素输入框在页面加载后自动获取焦点,并且关闭了自动完成功能。

2.form属性

在HTML5之前,如果用户要提交一个表单,必须把相关的控件元素都放在表单内部,即<form>和</form>标签之间。在提交表单时,会将页面中不是表单子元素的控件直接忽略掉。

下面通过一个案例2-40来演示form属性的使用,如图2-41所示。

例2-40  example40.html

 

<!DOCTYPE  html>

 

<html>

 

<head>

 

    <meta charset="utf-8">

 

    <title>form属性的使用</title>

 

</head>

 

<body>

 

<form  action="#"   method="get"   id="user_form">

 

    请输入您的姓名:<input  type="text"    name="first_name"/>

 

    <input type="submit"  value="提交"  />

 

</form>

 

    <p>下面的输入框在form元素外,但因为指定了form属性为表单的id,

 

        所以该输入框仍然属于表单的一部分。</p>

 

    请输入您的昵称:

 

    <input type="text"  name="last_name"    form="user_form"/><br/>

 

</body>

 

</html>

 

在例2-40中,分别添加两个<input/>元素,并且第二个<input />元素不在<form> </form>标记中。另外,指定第二个<input/>元素的form属性值为该表单的id。

此时,如果在输入框中分别输入姓名和昵称,则first_name和last_name将分别被赋值为输入的值。例如,在姓名处输入“李明”,昵称处输入“小明”, 效果如图2-42所示。

Input元素的其他属性

图2-42 form属性的使用

3. list属性

通过datalist元素实现数据列表的下拉效果。而list属性用于指定输入框所绑定的datalist元素,其值是某个datalist元素的id。

下面通过案例2-41来进一步学习list属性的使用,如图2-43所示。

例2-41example141.html

 

<!DOCTYPE  html>
 <html>
 <head>
     <meta  charset="utf-8">
     <title>list
属性的使用</title>
 </head>
 <body>
   <form action="#"    method="get">
     请输入网址:<input  type="url"    list="url_list"    name="weburl"/>
     <datalist  id="url_list">
      <option label="新浪"   value="http://www.sina.com.cn"></option>
       <option label="搜狐"   value="http://www.sohu.com"></option>
       <option label="网易"   value="http://www.126.net/"></option>
     </datalist>
     <input  type="submit"    value="提交"/>
   </form>
 </body>
 </html>

 

Input元素的其他属性

图2-43 list属性的使用

4.  multiple属性

  multiple属性指定输入框可以选择多个值,该属性适用于email和file类型的input元素。multiple属性用于email类型的input元素时,表示可以向文本框中输入多个E-mail地址,多个地址之间通过逗号隔开;multiple属性用于file类型的input元素时,表示可以选择多个文件。下面通过案例2-42来进一步演示multiple属性的使用,如图2-44所示。

例2-42example42.html

 

<!DOCTYPE  html>
 <html>
 <head>
     <meta  charset="utf-8">
     <title>multiple
属性的使用</title>
 </head>
 <body>
 <form action="#"   method="get">
     电子邮箱:<input  type="email"    name="myemail"     multiple="true"/>

 

&nbsp;&nbsp;(如果电子邮箱有多个,请使用逗号分隔)<br/><br/>
  上传照片:<input    type="file"   name="selfile"    multiple="true"/>

 

<br/><br/>
     <input type="submit"  value="
提交"/>
 </form>
 </body>
 </html>

 

Input元素的其他属性

图2-44 multiple属性的使用

5. min、max和step属性

HTML5中的min、max和step属性用于为包含数字或日期的input输入类型规定限值,也就是给这些类型的输入框加一个数值的约束,适用于date、pickers、number和range标签。具体属性说明如下:

max:规定输入框所允许的最大输入值。

min:规定输入框所允许的最小输入值。

step:为输入框规定合法的数字间隔,如果不设置,默认值是1。

6.pattern属性

pattern属性用于验证input类型输入框中,用户输入的内容是否与所定义的正则表达式相匹配。pattern属性适用于的类型是:text、search、url、tel、email和password的<input/>标记。常用的正则表达式如下表2-6所示。

表2-6  常用的正则表达式

                                                                                       

 

正则表达式

 
 

说明

 
 

^[0-9]*$

 
 

数字

 
 

^\d{n}$

 
 

n位的数字

 
 

^\d{n,}$

 
 

至少n位的数字

 
 

^\d{m,n}$

 
 

m-n位的数字

 
 

^(0|[1-9][0-9]*)$

 
 

零和非零开头的数字

 
 

^([1-9][0-9]*)+(.[0-9]{1,2})?$

 
 

非零开头的最多带两位小数的数字

 
 

^(\-|\+)?\d+(\.\d+)?$

 
 

正数、负数、和小数

 
 

^\d+$ 或 ^[1-9]\d*|0$

 
 

非负整数

 
 

^-[1-9]\d*|0$ 或 ^((-\d+)|(0+))$

 
 

非正整数

 
 

^[\u4e00-\u9fa5]{0,}$

 
 

汉字

 
 

^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$

 
 

英文和数字

 
 

^[A-Za-z]+$

 
 

由26个英文字母组成的字符串

 
 

^[A-Za-z0-9]+$

 
 

由数字和26个英文字母组成的字符串

 
 

^\w+$ 或 ^\w{3,20}$

 
 

由数字、26个英文字母或者下划线组成的字符串

 
 

^[\u4E00-\u9FA5A-Za-z0-9_]+$

 
 

中文、英文、数字包括下划线

 
 

^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$

 
 

Email地址

 
 

[a-zA-z]+://[^\s]* 或  ^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$

 
 

URL地址

 
 

^\d{15}|\d{18}$

 
 

身份证号(15位、18位数字)

 
 

^([0-9]){7,18}(x|X)?$ 或  ^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$

 
 

以数字、字母x结尾的短身份证号码

 
 

^[a-zA-Z][a-zA-Z0-9_]{4,15}$

 
 

帐号是否合法(字母开头,允许5-16字节,

 

允许字母数字下划线)

 
 

^[a-zA-Z]\w{5,17}$

 
 

密码(以字母开头,长度在6~18之间,

 

只能包含字母、数字和下划线)

 

了解了pattern属性以及常用的正则表达式,下面通过案例2-43来进行演示,如图2-45所示。

例2-43  example43.html

 

<!DOCTYPE html>
 <html>
 <head>
     <meta  charset="utf-8">
     <title>pattern
属性</title>
 </head>
 <body>
    <form action="#"  method="get">
    账&nbsp;&nbsp;&nbsp;&nbsp;号:

    <input type="text" name="username"  pattern="^[a-zA-Z][a-zA-Z0-9_]{4,15}$" />

(     以字母开头,允许5-16字节,允许字母数字下划线)<br/>
     密&nbsp;&nbsp;&nbsp;&nbsp;码:

   <input type="password" name="pwd"  pattern="^[a-zA-Z]\w{5,17}$" />

   (以字母开头,长度在6~18之间,只能包含字母、数字和下划线)<br/>
      Email地址:

      <input  type="email" name="myemail"  pattern="^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"/>
     <input type="submit"  value="提交"/>
     </form>
 </body>
 </html>

 

Input元素的其他属性

图2-45  pattern属性的使用

7.placeholder属性

placeholder属性用于为input类型的输入框提供相关提示信息,以描述输入框期待用户输入何种内容。在输入框为空时显式出现,而当输入框获得焦点时则会消失。示例代码如下:


请输入邮政编码:<input  type="text" name="code" pattern="[0-9]{6}" placeholder="请输入6位数的邮政编码" />

 

8. required属性

HTML5中的输入类型,不会自动判断用户是否在输入框中输入了内容,如果开发者要求输入框中的内容是必须填写的,那么需要为input元素指定required属性。required属性用于规定输入框填写的内容不能为空,否则不允许用户提交表单。示例代码如下:

 

<input  type="text" name="user_name"  required="required"/>