input标签特性

目录

一、概述

二、传统标签特性

三、html5新增特性


一、概述

input标签是最常见的表单控件。根据根据不同的type属性值,input控件拥有很多不同形式,例如文本框、单选框、复选框、按钮等。html中input是一个单标签,没有结束标签。所有浏览器都支持input控件。

二、传统标签特性

input标签有11个传统特性。

name特性

规定input标签的名称,主要有两个作用。其一对提交到服务器的表单数据进行标识(只有设置了name特性的表单控件才能在提交表单时传递它们的值)。其二在脚本中引用表单数据。

type特性

规定input标签的类型。如果input标签没有设置type特性,或设置的特性值不被浏览器支持,浏览器默认将其识别为文本框。

accept特性

规定能够通过文件上传提交的文件类型。理论上可以用来限制上传文件的类型,然而它只是建设性的,并很可能被忽略,它接受逗号分隔的MIME类型。注意,该特性只能与文件上传控件配合使用。

<input type="file" accept="image/gif,image/jpeg,image/jpg">

alt特性

规定图像的替代文本,为用户由于某些原因无法查看图像时提供备选信息。功能类似于image标签的alt特性。

<!--该特性只能与type="image"的input标签配合使用-->
<input type="image" src="#" alt="测试图片">

checked特性

规定页面加载时应该被预先选定的input标签,也可以在页面加载后,通过JS进行设置。该特性只能与单选框或多选框配合使用。

<input type="radio" name="radio" value="1" checked>
<input type="radio" name="radio" value="2">
<input type="checkbox" name="checkbox" value="1">
<input type="checkbox" name="checkbox" value="2">
<script>
    var input = document.getElementsByTagName('input');
    for(var i = 0,len = input.length; i < len; i++){
        input[i].onmouseover = function(){
            this.checked = 'checked';
        }
    } 
</script> 

disabled特性

规定应该被禁用的input标签。被禁用的字段不能修改,也不可以使用tab键切换到该字段,但可以选中或拷贝其文本。该标签不能与type特性值为hidden的input标签一起使用。ie7及以下版本的浏览器必须设置为disabled="disabled",而不可以直接设置disabled,否则使用JS控制时将失效。

<button id="btn1">输入域可用</button>
<button id="btn2">输入域不可用</button>
<input id="demo" disabled value="内容">
<script>
    btn1.onclick = function(){
        demo.removeAttribute('disabled');
    }    
    btn2.onclick = function(){
        demo.setAttribute('disabled','disabled');
    }    
</script>

readonly特性

规定输入字段为只读。只读字段不能修改,但用户可以使用tab键切换到该字段,也可以选中或拷贝其文本。该特性只能与文本框或密码框配合使用。ie7及以下版本的浏览器不支持使用JS控制readonly特性。

<button id="btn1">输入域只读</button>
<button id="btn2">输入域可读写</button>
<input id="demo" value="内容" readonly>
<script>
    btn1.onclick = function(){
        demo.setAttribute('readonly','readonly');
    }
    btn2.onclick = function(){
        demo.removeAttribute('readonly');
    }    
</script>

maxlength特性

规定输入字段的最大长度,以字符个数统计。该特性只能与文本框或密码框配合使用。

<input maxlength="6">
<input type="password" maxlength="6">

size特性

文本框或密码框中,该特性规定可见的字符数。对于其他类型,规定以像素为单位的输入字段宽度。注意,由于size特性是一个可视化的设计属性,推荐使用CSS来代替它。

<input size="1">
<input type="password" size="2">

src特性

规定提交按钮显示图像的url。src特性必须与type特性值为image的input标签配合使用。

<form action="#">
    <input name="test">
    <input type="image" src="https://deme.site/submit.jpg" width="99" height="99" alt="测试图片">
</form>

value特性

为input标签设定值。对于不同的控件类型,value特性的用法存在区别。

1、type="button"、"reset"、"submit" 用于定义按钮上的显示的文本
2、type="text"、"password"、"hidden"用于定义输入字段的初始值
3、type="checkbox"、"radio"、"image"用于定义与输入相关联的值

单选框和多选框必须设置value特性。value特性不能与文件上传控件配合使用。

<input id="btn1" type="button" value="1">
<input id="btn2" type="button" value="2">
<input id="test">
<script>
    btn1.onclick = btn2.onclick =function(){
        test.value=this.value;
    }    
</script>

三、html5新增特性

input标签有19个新增特性。

autocomplete特性

在表单控件上开启或关闭浏览器的自动完成功能。当用户在字段开始键入时,浏览器基于之前键入过的值,显示出字段中填写的选项。该特性适用于form表单中以下类型的input标签:text、search、url、telephone、email、password、date pickers、range、color。

注意,ie浏览器不支持该特性,只有标签拥有name特性,autocomplete特性才有效。

<input name="demo0" autocomplete="on">
<input name="demo1" autocomplete="off">   

autofocus特性

规定在页面加载时,表单控件自动获取焦点。autofocus特性适用于button、input、keygen、select和textarea标签。

<input name="demo0">
<input name="demo1" autofocus>

novalidate特性

规定在提交表单时不验证input域。novalidate特性适用于form表单及其以下类型的input标签:text、search、url、telephone、email、password、date pickers、range、color。ie9及以下版本的浏览器不支持。

<form action="">
    <input type="email" name="demo" id="demo" novalidate>
    <input type="submit" value="提交">
</form>

height特性

规定image类型的input标签引入的图像的高度。height特性只适用于image类型的input标签。

width特性

规定image类型的input标签引入的图像的宽度。width特性只适用于image类型的input标签。

<form action="#">
    <input name="test">
    <input type="image" src="git.PNG" width="200" height="99">
</form>

list特性

大多数input控件类型包含一个list特性,它和一个新标签datalist结合使用。datalist标签定义在表单控件输入数据时可用的一个选项列表。datalist标签本身不会在页面中显示,而是为其它标签的list特性提供数据。

list特性适用于form标签及以下类型的input标签:text、search、url、telephone、email、password、date pickers、range、color。ie9及以下版本的浏览器和safari浏览器不支持list特性。

<form action="#">
    <input list="list" name="input">
    <datalist id="list">
        <option value="1">
        <option value="2">
        <option value="3">
    </datalist>
</form>

min特性

规定数字域所允许的最小值。

max特性

规定数字域所允许的最大值。

step特性

为数字域规定合法的数字间隔。min、max、step特性适用于以下类型的input标签:date pickers、number、range。

<input type="number" min="0" max="10" step="0.5" value="6" />
<input type="range" min="0" max="10" step="0.5" value="6" />

multiple特性

multiple特性规定按住ctrl键,输入字段可以同时选择多个值。该特性适用于type特性值为email和file的input标签。ie9及以下版本的浏览器不支持该特性。

<button id="btn1">打开文件多选</button>
<button id="btn2">关闭文件多选</button>
<br><br>
<input id="test" type="file" multiple>
<script>
    btn1.onclick = function(){
        test.setAttribute('multiple','');
    };
    btn2.onclick = function(){
        test.removeAttribute('multiple');
    };
</script>

pattern特性

规定用于验证input域的模式。模式pattern是正则表达式。pattern特性适用于以下类型的input标签:text、search、url、tel、email、password。ie9及以下版本的浏览器和safari浏览器不支持该特性。

<form action="#">
    <input pattern="\d{3}">    
    <input type="submit">
</form>

placeholder特性

该特性提供占位符文字,描述输入域所期待的值。占位符会在输入域为空时显示,在输入域获得焦点时消失。placeholder特性适用于以下类型的input标签:text、search、url、tel、email、password。ie9及以下版本的浏览器不支持该特性。

<form action="#">
    <input type="tel" placeholder="请输入数字" pattern="\d{11}">    
    <input type="submit">
</form>

要修改placeholder的颜色需要使用::placeholder。

::placeholder{
    color:green;
}

required特性

规定输入域不能为空。required特性适用于以下类型的input标签:text、search、url、telephone、email、password、date pickers、number、checkbox、radio、file。ie9及以下版本的浏览器和safari浏览器不支持required特性。

<form action="#">
    <input required>    
    <input type="submit">
</form>

form特性

规定输入域所属的一个或多个表单,若需要引用一个以上的表单时,用空格分隔。form特性值为所属表单的id。form特性适用于所有input标签类型。ie浏览器不支持该特性,只有标签拥有name特性,该特性才有效。

<form id="form" action="#">
    <input type="submit">
</form>
<input name="test" form="form">

formaction特性

重写表单的action特性。该特性适用于submit或reset的button或input标签。

<form action="#" >
    账号: <input type="text" name="fname" /><br />
    密码: <input type="text" name="lname" /><br />
    <input type="submit" value="提交" /><br />
    <input type="submit" formaction="#" value="以管理员身份提交" />
</form>

formenctype特性

重写表单的enctype特性。该特性适用于submit或reset的button或input标签。

<form action="#" method="post">
    账号: <input type="text" name="fname" /><br />
    <input type="submit" value="提交" />
    <input type="submit" formenctype="multipart/form-data" value="以multipart/form-data编码提交" />
</form>

formmethod特性

重写表单的method特性。该特性适用于submit或reset的button或input标签。

<form action="#" method="get">
    First name: <input type="text" name="fname" /><br />
    Last name: <input type="text" name="lname" /><br />
    <input type="submit" value="提交" />
    <input type="submit" formmethod="post" formaction="#" value="使用POST提交" />
</form>

formnovalidate特性

重写表单的novalidate特性。该特性适用于button或input标签。

<form action="#" method="get">
    邮箱: <input type="email" name="userid" /><br />
    <input type="submit" value="提交" /><br />
    <input type="submit" formnovalidate="formnovalidate" value="进行没有验证的提交" />
</form>

formtarget特性

重写表单的target特性。该特性适用于submit或reset的button或input标签。

<form action="#">
    账号: <input type="text" name="fname" /><br />
    密码: <input type="text" name="lname" /><br />
    <input type="submit" value="提交" />
    <input type="submit" formtarget="_blank" value="提交到新窗口/选项卡" />
</form> 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值