javascript---表单介绍

首先上来一个干货:

跨浏览器阻止默认行为:

1         function preDef(evt){
2             var e=evt||window.event;
3             if(e.preventDefault){
4                 e.preventDefault();
5             }else{
6                 e.returnValue=false;
7             }
8         }

通俗的讲就是阻止这个东西的本来的功能,例如:a标签的默认行为是点击跳转到其他URL,而阻止默认行为则是不跳转。

 


 

我们进入正题,表单:

1.表单提交

 1         addEvent(window,'load',function(){
 2             var fm=document.getElementById('myForm');
 3             
 4             //阻止提交
 5             addEvent(fm,'submit',function(evt){
 6                 preDef(evt);
 7             });
 8             //疑问:submit事件为什么要用form对象来触发?为什么不能使input中的submit
 9             
10             //PS:把submit事件注册到input中的submit按钮是无法触发submit事件的
11             //PS:必须把submit事件绑定到form对象上才可以触发submit事件
12             //PS:只不过触发submit事件的流程是点击input中的submit按钮而已
13         });

总结:提交表单我们要绑定的是表单form元素的提交事件,而不是绑定input[type='submit]'。

不过,也能使不是submit按钮可以提交表单。就是加

fm.submit();


 

2.表单控件:

form里面的input submit textarea select

1     addEvent(window,'load',function(){
2             var fm=document.getElementById('myForm');
3             alert(fm.elements);                //表单控件集合,其他元素会被忽略
4             //alert(fm.length);                //向下兼容,不推荐
5             alert(fm.elements.length);            //推荐
6             alert(fm.elements[0]);    
7             alert(fm.elements['user']);            //如果有相同的name,那么会得到数组    
8         });

 

表单字段属性:

value

name

type

form

1     addEvent(window,'load',function(){
2             var fm=document.getElementById('myForm');
3             alert(fm.elements[1].value);
4             alert(fm.elements[1].name);
5             alert(fm.elements[1].type);
6             alert(fm.elements[1].form);                //得到从属的form对象
7             fm.elements[1].disabled=true;
8         });

 

表单字段方法:

focus()  将焦点移入

blur()  将焦点移出

 

共有表单字段事件

onblur

onchange

onfocus

 

转载于:https://www.cnblogs.com/GacentJohn/p/5343406.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值