HTML form表单新增元素

7 篇文章 0 订阅
相信大家对html中表单不陌生吧,下面我们来聊一下在H5里面表单新增的元素和废弃元素。
4表单相关新增元素和属性
4.1表单元素新增和废弃的属性 
表单新增的属性可以分成2类:
提交类:提交给服务器设置的相关属性,formaction、formmethod,formtype
控制类:required、autofocus、labels。

4.1.1 form属性
在H5之前,表单内的所有从属标签(下级标签),必须书写在form标签内部
H5:允许标签写在任何地方,但是,我们需要做两步操作,必须给form设置一个id,给元素设置form属性,form属性的值就是form id的值
<form action="#" id="testForm">
    请输入日期:<input name="date" type="text"/>
    <input type="submit" value="提交"/>
</form>
    密码:<input form="testForm" name="psd" type="password"/>

4.1.2  formaction
在H5之前,表单内所有的元素submit只能提交到统一的地址,也就是指定的action。
H5可以为每一个submit指定action,通过设置formaction属性来实现的

<form id="testForm">
    请输入日期:<input name="date" type="text"/>
    密码:<input form="testForm" name="psd" type="password"/>
    <input type="submit" value="提交0" formaction="xx.api"/>
    <input type="submit" value="提交1" formaction="xxx.api"/>
</form>
4.1.3 formmethod
<form id="testForm" method="get">
    请输入日期:<input name="date" type="text"/>
    密码:<input form="testForm" name="psd" type="password"/>
    <input type="submit" value="提交0" formaction="xx.api" formmethod="get"/>
    <input type="submit" value="提交1" formaction="xxx.api" formmethod="post"/>
</form>



4.1.4 formenctype 编码方式
<form id="testForm" enctype="text/plain">
    请输入日期:<input name="date" type="text"/>
    密码:<input form="testForm" name="psd" type="password"/>
    <input type="submit" value="提交0" formaction="xx.api" formenctype="text/plain"/>
    <input type="submit" value="提交1" formaction="xxx.api" formenctype="application/x-www-form-urlencoded"/>
</form>
4.1.5 formtarget
<form id="testForm">
    请输入日期:<input name="date" type="text"/>
    密码:<input form="testForm" name="psd" type="password"/>
    <input type="submit" value="提交0" formtarget="_self"/>
    <input type="submit" value="提交1" formtarget="_blank" formenctype="application/x-www-form-urlencoded"/>
</form>
4.1.6 autofocus
为输入框或者按钮自动添加autofocus,当页面打开时,该页面自动获取焦点,光标焦点
如果对多个元素设置该属性,默认第一个有效
4.1.7  required
如果在输入框中设置required,如果该输入框没有内容的时候,点击提交的时候,会提示“请填写此字段”。
<form id="testForm">
    请输入日期:<input type="text"/>
    密码:<input  type="password" required/>
   <input type="submit" value="提交0" formtarget="_self" formaction="11.api" autofocus/>
    <input type="submit" value="提交1" formtarget="_blank" formaction="11.api"/>
</form>

4.1.8 labels
Labels 他的属性值是一个notelist
<form id="testForm">
    <label for="psd">请输入密码:</label>
    <input type="password" id="psd" required/>
    <label for="psd"></label>
    </div><br>
    <input type="button" οnclick="validate()" value="提交0"/>
</form>
</body>
<script>
    function validate(){
        var psd = document.getElementById("psd");
        psd.labels[1].innerHTML = "密码";
        psd.labels[1].setAttribute("style","font-size:9px;color:yellow");
    }
4.1.9 文本框placeholder
当输入框没有内容的时候,模糊显示placeholder的值
当输入框有内容的时候,placeholder被隐藏。
4.1.10 文本框 list
H5新增了list属性 这个属性的值 一个datalist元素的id的值datalist也是h5新增的一个元素,设置了list属性,该属性框有搜索功能,会从datalist中搜索出和输入相关的东西
<input list="languageList" id="selectLanguageList" placeholder="请输入你喜欢的编程语言"/>
<datalist id="languageList">
    <option>JS</option>
    <option>JAVA</option>
    <option>C#</option>
    <option>Object-c</option>
</datalist>
4.1.11 pattern
<form id="testForm">
    <div>
        <input pattern="[A-Z]{5}" placeholder="请输入五个大写的字符"/>
        <input type="submit" value="提交"/>
    </div>
</form>
Input标签输入的内容,可以配合pattern属性进行校验,pattern写校验的正则表达式。
4.1.12 input type=image的width和height
一般情况下,input标签设置width和height是没有效果的,但是对于type=image的时候,可以设置长度和宽度。

4.2 HTML5改良的input元素的种类 
 新增功能:
1.Color:当输入框中属性设置为color时,可以直接调用习题噢能够提供的调色盘,唯一的缺点是调色盘缺少一个透明度。这个属性有兼容性问题,目前发现在iphone'手机微信浏览器,没有弹出颜色选项卡
2.url:当输入框属性设置为url时,只接收地址输入域或者地址输入,当输入url为错误时,会有提示。具有自我检测功能。如果是移动端,虚拟键盘会切换到数据网址的虚拟键盘。
(.com/www.)
3.email
当输入框中的属性设置为email的时候,只接收邮箱输入,当输入的不为邮箱或者邮箱格式有误的时候,也会报错,同样具有自我检测功能.
如果是移动端,虚拟键盘会切换到数据邮箱的虚拟键盘(@)。
(.com/www.)
4.Tel
当输入框中的属性设置为tel时,那么输入框就是为电话号码专门设置的,他并没有特殊的检验规则,可以通过设置pattern属性来完成检测功能。
如果是移动端,虚拟键盘会切换到输入电话的虚拟键盘(数字、+、*、#)。
5.search:
Search类型的input元素是一种专门用来输入搜索关键词的文本框,search类型仅仅在外观上有所不同。
6.Number
7.当输入框属性设置为number的时候,可以设置输入框接收的数字的输入域,可以用num,Max实现这一点。同时还可以设置最小值和最大值 min和max属性
事件控件
8.range
<input type="date" name="date" value=""/>

当输入框属性设置为range的时候,可以设置一段范围内数值的文本框,它的类型显示为一个滑块,同样可以对它设置min和max控制范围,默认范围是0-100,当设置了step属性的时候,可以指定每次拖动的步幅
9.Date在input元素属性中是以日历形式显示给用户,缺点:只有在谷歌浏览器上才能够具有效果,其他浏览器暂时不支持,例如IE、火狐。了解即可,有兼容问题。
10.时间:
时间:<input type="time" name="time" value=""/>
浏览器支持情况同上
time属性input元素中一种输入时间的文本框;
他会接受用户输入的时间进行自我检测
了解即可,有兼容问题。

11.Datetime和前两个不同的就是直接出现文本框,让用户输入!
本人感觉和普通的输入框没有什么区别
了解即可,有兼容问题。


在input中综合了时间和日期的属性,浏览器兼容情况同上!
Week:
星期:<input type="week" name="week"/>
在input中新元素主要是显示日期第几周
注意:只会以周的形式呈现
了解即可,有兼容问题。

Month
月份:<input type="month" name="month"/>
这个属性主要显示月份,与date相比,月份在input元素少了天数;
对于设置了对应的input,如果input输入框没有写东西,提交的时候不做检验,但是如果填写了内容,填写的内容形式不对的话,提交的提示显示xxx不对,同时鼠标光标focus到该输入框
14.Output 元素
<output> 标签作为计算结果输出显示(比如执行脚本的输出)。
Firefox、Opera、Chrome 和 Safari 浏览器都支持 <output> 标签。
注意:Internet Explorer 浏览器不支持 <output> 标签。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值