表单元素

<form>定义表单

         <form method="get" action="http://www.baidu.com">

           用户名:<input  name="user">

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

</form>

解释:<form>元素主要是定义本身是一组表单

action表示表单提交的页面,默认提交当前页面

method表示表单的请求方式:有POST和GET两种,默认GET

get   https://www.so.com/?user=11

post  https://www.so.com/

enctype 表示浏览器对发送给服务器的数据所采用的编码格式。有三种:application/x-www-form-urlencoded(默认编码,不能将文件上传到服务器)、multipart/form-data(用于上传文件到服务器)

name设置表单名称,以便程序调用,form提交的时候只提交input,不提交form表单

target设置提交时的目标位置:_blank、_parent、_self、_top

autocomplete设置浏览器记住用户输入的数据,实现自动完成表单。默认为on自动完成,如果不想自动完成则设置off。

<input>表示用户输入数据

<inputname="user">

解释:<input>元素默认情况会出现一个单行文本框

autofocus让光标聚焦在某个input元素上,让用户直接输入

disabled禁用input元素

autocomplete单独设置input元素的自动完成功能

form让表单外的元素和指定的表单挂钩提交

比如

电子邮件:<input name="email" form="register">

在form[register]的表单外,提交时,无法提交email的值,但在input加入form的属性,则在form[register]提交时,将提交email的值

name定义input元素的名称,以便接收到相应的值

<label>添加说明标签

       <label for="user">用户名:</label>

       <input id="user" name="user"  ><br>

或者

       <label>

       电子邮件:<input name="email" form="register">

       </label>

解释:<label>元素可以关联input,让用户体验更好。且更加容易设置CSS样式。而且点label就会在input上聚焦

<fieldset>对表单进行编组

       <fieldset>

           <label for="user">用户名:</label>

            <input id="user"   name="user" > <br>

            <label>

              电子邮件:<input name="email" >

           </label>

        </fieldset>

解释:<fieldset>元素可以将一些表单元素组织在一起,形成一个整体

name给分组定义一个名称

form让表单外的分组与表单挂钩

disabled禁用分组内的表单

<legend>添加分组说明标签

         <fieldset>

                   <legend>注册分组</legend>

          ……

         </fieldset>

解释:<legend>元素给分组加上一个标题

 

<button>添加按钮

<buttontype="submit"></button>

解释:<button>元素添加一个按钮

submit表示按钮的作用是提交表单,默认

reset表示按钮的作用是重置表单

button表示按钮为一般性按钮,没有任何作用,配合js处理

input type为text值

<input type="text" name="user" maxlength="10" size="30" value="bnbbs" readonly disabled>

解释:当type值为text时,呈现的就是一个可以输入任意字符的文本框,这也是默认行为。并且,还提供了一些额外的属性。

maxlength设置文本框最大字符长度

size设置文本框宽度

value设置文本框初始值

readonly文本框处于只读状态,也可以提交

disabled文本框处于禁用状态,整个文本框变为灰色,不可以提交

placeholder输入字符的提示

list指定为文本框提供建议值的datalist元素,其值为datalist元素的id值

<form >

<input type="text" list="abc" >

</form >

 

<datalist id="abc">

    <option value="1">苹果</option>

    <option value="2">桔子</option>

    <option value="3" label="香蕉">

    <option value="菠萝">

</datalist>

单击文本框

input type为password值

<input type="password" placeholder="请输入密码">

解释:当type值为password时,一般用于密码框的输入,所有的字符都会显示星号。密码框也有一些额外属性

input type为search值

<input type="search">

解释:和文本框一致,在除Firefox浏览器的其他现代浏览器,会显示一个叉来取消搜索内容。额外属性也和text一致。

input type为number、range值

<input type="number" min="10" max="100" step="2">

解释:只限输入数字的文本框,不同浏览器可能显示方式不同。生成一个数值范围文本框,只是样式是拖动式

input type为date系列

    <input type="date">

    <input type="month">

    <input type="time">

    <input type="week">

    <input type="datetime">

    <input type="datetime-local">

解释:实现文本框可以获取日期和时间的值,但支持的浏览器不完整。我们测试Chrome和Opera支持,其他浏览器尚未支持。所以,在获取日期和时间,目前还是推荐使用jQuery等前端库来实现日历功能。额外属性和number一致。

input type为color

<input type="color" name="color">

解释:实现文本框获取颜色的功能,最新的现代浏览器测试后IE不支持,其余的都能显示一个颜色对话框提供选择。

input type为checkbox、radio

         音乐<input type="checkbox" name="music" value="1">

         体育<input type="checkbox" name="sport" value="2">

提交时:…?music=1&sport=2

         <input type="radio" name="sex" value="1" checked>男

         <input type="radio" name="sex" value="2">女

提交时:…?sex=1

解释:生成一个获取布尔值的复选框或固定选项的单选框

input type为submit、reset和button

<input type="submit">

<input type="reset">

<input type="button">

解释:生成一个按钮,三种模式:提交、重置和一般按钮,和<button>元素相同。

submit生成一个提交按钮

reset生成一个重置按钮

button生成一个普通按钮

如果是submit时,还提供了和<button>元素一样的额外属性:formaction、formenctype、formmethod、formtarget和formnovalidate。

input type为image

<input type="image" src="img.png">

 

提交时:…/?x=225&y=66(坐标)

解释:生成一个图片按钮,点击图片就实现提交功能,并且传送了分区响应数据。图片按钮也提供了一些额外属性。

src指定要显示图像的URL

alt提供图片的文字说明

width图像的长度

height图像的高度

提交额外属性formaction、formenctype、formmethod、formtarget和formnovalidate。

input type为email、tel、url

 

解释:email为电子邮件格式、tel为电话格式、url为网址格式。额外属性和text一致。但对于这几种类型,浏览器支持是不同的。email支持比较好,现在浏览器都支持格式验证;tel基本不支持;url支持一般,

部分浏览器只要检测到http://就能通过

input type为hidden

<input type="hidden" value="1" name="id">

提交时:…/?id=1

 

解释:生成一个隐藏控件,一般用于表单提交时关联主键ID提交,而这个数据作为隐藏存在。

input type为file

<input type="file" accept="image/gif">

解释:生成一个文件上传控件,用于文件的上传。额外提供了一些属性:

accept指定接受的MIME类型

required表明用户必须提供一个值,否则无法通过验证

生成下拉列表

         <select name="fruit"  >

                           <option value="1">苹果</option>

                            <option value="2" selected>香蕉</option>

                            <option value="3">桔子</option>

        </select>

提交时:…?fruit=2

解释:<select>下拉列表元素至少包含一个<option>子元素,才能形成有效的选项列表。<select>元素包含两个子元素<option>项目元素和<optgroup>分组元素,还包含了一些额外属性。

name设定提交时的名称

disabled将下拉列表禁用

form将表单外的下拉列表与某个表单挂钩

size设置下拉列表的高度,size=10,可以放10个

multiple设置是否可以多选

提交时:…?fruit=1&fruit=2

autofocus获取焦点

required选择验证,设置后必须选择才能通过

使用optgroup进行分组,label为分组名称

                   <optgroup label="水果">

                            <option value="1">苹果</option>

                            <option value="2" selected>香蕉</option>

                            <option value="3">桔子</option>

                   </optgroup>

                   <optgroup label="粗粮">

                            <option value="4">小米</option>

                            <option value="5">大米</option>

                            <option value="6">玉米</option>

                   </optgroup>

提交时:…?fruit=2&fruit=4

多行文本框

<textarea name="content" rows="20" cols="40" wrap="hard">请留下您的建议!</textarea>

解释:生成一个可变更大小的多行文本框。

属性如下:

name设定提交时的名称

form将表单外的多行文本框与某个表单挂钩

readonly设置多行文本框只读

disabled将多行文本框禁用

maxlength设置最大可输入的字符长度

autofocus获取焦点

placeholder设置输入时的提示信息

rows设置行数(高度)

cols设置列数(宽度)

wrap设置是否插入换行符,有soft和hard两种(默认值soft,使用hard时,换行时有个隐藏的换行符,提交时会将换行符也一起提交)

required设置必须输入值,否则无法通过验证

输入验证

<input type="text" required>

解释:必须填写一个值

<input type="number" min="10" max="100">

解释:限定在某一个范围内

<input type="text" placeholder="请输入区号+座机" pattern="^[\d]{2,4}\-[\d]{6,8}$">

解释:使用正则表达式

<form action="http://li.cc" novalidate >

解释:禁止表单验证

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值