js第14章 表单提交

1.表单提交

  • input button通过设置 type类型为submit
    浏览器将表单提交到服务器之前,form表单会触发submit事件,可以在这个事件中去验证表单,之后再去提交给服务器;
<form method="get" action="" onsubmit="return tijiao()">
    <ul>
        <li>姓名:<input name="name" id="n" type="text"/></li>
        <li><input type="submit" value="提交"/></li>
    </ul>
</form>
    var form=document.getElementsByTagName("form")[0];
    function tijiao(){
       if(form.elements[0].value)
       {
         return  true
       }
        else{
       return false
       }
    }

通过submit()方法提交,不会触发submit事件,不会验证表单,所以一般会先验证表单,为true再继续调用submit();

<form method="get" action="" >
    <ul>
        <li>姓名:<input name="name" id="n" type="text"/></li>
        <li><input type="button" value="提交" onclick="tijiao()"/></li>
    </ul>
</form>
    var form=document.getElementsByTagName("form")[0];
    function tijiao(){
       if(form.elements[0].value)
       {
          form.submit()
       }
    }

2.表单的重置

  • 通过设置type属性为reset
    会触发form表单的reset事件,可以在事件中取消表单的默认行为
<input type="reset" value="重置"/>
<button type="reset" value="重置"></button>
  • 通过form表单中的reset()方法,不会触发reset事件

3.表单字段

1. 表单字段
每个form表单都有elements属性,elements是一个集合,表示表单中的每一个字段;包括 input button textarea filedset

  • form.elements[0] 取表单中的第一个字段
  • form.elements["name“] 取得name为name的字段,如果多个名为name的字段,则返回一个Nodelist对象,通过form.elements[‘name’][0] 取字段

2.表单字段的共有属性

  • 名字:name
  • 禁用:disabled
  • 值:value
  • 类型:type
  • 只读:readOnly true/false值
  • form:当前字段指向的表单指针
    js设置属性
    form.elements[0].disabled=true;

3.表单字段的共有方法

  • focus() 让表单字段聚焦

  • html5 新增了autofocus,表单字段自动获取焦点

  • blur() 表单字段失去焦点

4.表单字段共有的事件

  • blur事件 失去焦点时触发

  • focus事件表单字段获得焦点时触发

  • change事件 表单字段input textarea中文本发生变化,并且失去焦点触发
    select下拉菜单中,option发生变化,则触发change事件

5.input文本框

  • type:text输入框

  • value:文本的初始值

  • size:文本框能够显示的字符

  • maxlength:文本框接受最大的字符

 - <textarea> 初始值要放在里面</textarea>
   rows字符行数
   cols列数

7.selecet下拉菜单

  • options:表示option集合,是一个HTMLcollection

  • multiple:布尔值 是否可以选择多个值

  • size:选择框中可见的行数

  • value:

    如果是单选,select的值为option value的值,如果option中的value值没有设置,则为option的文本值;如果value设置为”“,则select中的value为”“
    如果设置multiple,windows按ctrl则可以进行多选,select中的value值为第一个选中的option的value值;

  • add(newoption,beforeoption) 向select中添加新的option,在指定的option之前

  • remove(index)删除option根据options中的索引

8.option中的属性

  • index:当前option在options集合中的索引

  • label:option标签

  • text:当前option的文本值

  • value:当前option的value值

  • selected:布尔值。为true表示选中当前的option

    获取option的文本值和value

 var text=select.options[0].text
  var value=select.options[0].value 注意:onchange事件只要option发生改变就会触发该事件

  1. 添加Option选项
  • 使用dom方法
   var newoption=document.createElement("option");
  var newtext=document.createTextNode("篮球")
  newoption.appendchild(newtext);
  newoption.setAttribute("value",1)
  select.appendchild(newoption)
  • 使用Option构造函数
var newoption=new Option("篮球",1); //(text文本值,value值)
select.appendchild(newoption)// select.add(要插入option,插入那个option之前)
select.add(newoption,undefined)//插入最后一个

10删除option选项

  • 使用remove()
    select.remove(0)
  • select.removechild(select.options[0])
  • select.options[0]=null

11.移动和重排option
重排选项:
select.insertBefore(form.elements[3].options[2],form.elements[3].options[0]);

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值