第十四章 表单脚本

1、通过getElementBy**可以获得<form>元素,或者通过document.forms可以取得页面中所有的表单,可以通过数值索引或者name值取得特定的表单。

2、提交表单时,浏览器会在将请求发送到服务器之前触发submit事件,这样我们就有机会验证表单数据,并决定是否允许表单提交。阻止这个事件的默认行为就可以取消表单提交。

3、在JS中,以编程方式调用submit()方法也可以提交表单。不会触发submit事件。

4、点击重置按钮重置表单时,会触发reset事件。可以在必要时取消重置。(比如弹出confirm对话框,点击取消的话就阻止默认行为)

5、可以调用reset()方法重置,会触发reset事件。

6、每个表单都有elements属性,是表单中所有表单元素的集合,顺序与出现在标记中的顺序相同。

7、共有的表单字段事件:blur,change,focus。对于input和textarea元素,当它们从获得焦点到失去焦点且value值发生变化时,才会触发change事件,对于select元素,只要选择了不同的选项,就会触发change事件,即不失去焦点也会触发change事件。

8、关于blur和change的关系,没有严格的规定,有些浏览器中blur会先于change事件发生,而有些浏览器中相反。

9、input元素的size特性能够指定显示的字符数,value设置初始值,maxlength指定可以接受的最大字符数。

10、textarea元素使用rows和cols指定文本框的大小。与input不同的是,初始值要放在标签中间,另一个不同是不能在HTML中给textarea元素指定最大字符数。

11、select()方法选择文本框中的所有文本。

12、select事件,在选择了文本框中的文本时,就会触发select事件,大部分浏览器在选择了文本并释放鼠标后才会触发,IE8之前不释放鼠标也会触发。

13、取得用户在文本框中选择的文本:

function getSelectedText(textbox){
  if(typeof textbox.selectionStart=="number"){
  return textbox.value.substring(textbox.selectionStart,textbox.selectionEnd);
  }else if(document.selection){//IE8及之前
    return document.selection.createRange().text;
  }
}

js-JavaScript高级程序设计学习笔记10的更多相关文章

  1. JavaScript高级程序设计---学习笔记(一)

    今天,2017.3.17开始利用课余时间仔细学习<JavaScript高级程序设计>,将需要掌握的知识点记录下来,争取把书里的所有代码敲一遍并掌握. 1.标识符命名最好是第一个字母小写,剩 ...

  2. javascript高级程序设计学习笔记

    javascript高级程序设计,当枕头书已经好久了~zz  现在觉得自己在js的开发上遇到了一些瓶颈,归根究底还是基础太薄弱,所以重新刷一遍js高程希望有更新的认识. 一.javascript简介 ...

  3. javascript 高级程序设计 学习笔记

    <!--<script> // 异步请求封装 IE6即以上浏览器 // ajax(url,fnSucc,selectID,fnFaild) //url 请求地址 //fnSucc 异 ...

  4. JavaScript高级程序设计---学习笔记(二)

    面向对象程序设计1.属性类型.定义多属性.读取属性特性对象的属性在创建时都带有一些特征值,JavaScript通过这些特征值来定义它们的行为.这些特性是为了实现JavaScript引擎用的,因此不能直 ...

  5. JavaScript高级程序设计学习笔记第十章--DOM

    1.DOM:文档对象模型,是针对 HTML 和 XML 文档的一个 API(应用程序编程接口). 2.DOM 可以将任何 HTML 或 XML 文档描绘成一个由多层节点构成的结构. 3.文档节点是每个 ...

  6. JavaScript高级程序设计学习笔记之事件

    1.事件流 事件流描述的是从页面中接收事件的顺序. 事件冒泡 IE的事件流叫做事件冒泡(event bubbling),即事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播 ...

  7. JavaScript高级程序设计学习笔记--DOM

    DOM(文档对象模型)是针对HTML和XML文档的一个API(应用程序接口). Document类型 文档的子节点 虽然DOM标准规定Document节点的子节点可以是DocumentType,Ele ...

  8. JavaScript高级程序设计学习笔记--BOM

    window对象 BOM的核心对象是window,它表示浏览器的一个实例.在浏览器中,window对象有双重角色,它既是通过JavaScript访问浏览器窗口的一个接口,又是ECMScript规定的G ...

  9. JavaScript高级程序设计学习笔记--函数表达式

    关于函数声明,它的一个重要特征就是函数声明提升,意思是在执行代码之间会读取函数声明,意思是在执行代码之前会先读取函数声明.这就意味着可以把函数声明放在调用它的语句 后面. sayHi(); funct ...

随机推荐

  1. 无法安装 DotNetCore.1.0.0-VS2015Tools.Preview2解决方法

    安装 DotNetCore.1.0.0-VS2015Tools.Preview2,已经安装vs2015update3,还是提示检测到 Visual Studio 2015 Update 3没有完全安装 ...

  2. 《Node.js开发实战详解》学习笔记

    <Node.js开发实战详解>学习笔记 ——持续更新中 一.NodeJS设计模式 1 . 单例模式 顾名思义,单例就是保证一个类只有一个实例,实现的方法是,先判断实例是否存在,如果存在则直 ...

  3. zabbix-proxy3.0.4编译安装

    数据库配置: innodb_file_per_table=1   安装mysql rpm -ivh http://dev.mysql.com/get/mysql-community-release-e ...

  4. QT 网络编程二(UDP版本)

    QT的UdpSocket接收消息使用原则 第一步:new一个UdpSocket 第二步:调用UdpSocket的bind方法,同时指定端口号 第三步:使用connect将接收消息函数和UdpSocke ...

  5. Android编译报Errors running builder 'Android Pre Compiler' on project 'XXX' java.lang.NullPointerException

    编译android时,遇到报错:Errors occurred during the build.Errors running builder 'Android Pre Compiler' on pr ...

  6. 十分钟掌握Activity的生命周期与启动模式

    1. Activity的生命周期 正常情况下的Activity生命周期如下图所示(来自Android Developer): 当资源相关的系统配置变更时(比如设备屏幕方向改变,键盘可见性变化),会导致 ...

  7. 【MVVMLight小记】二.开发一个简单图表生成程序附源码

    上一篇文章介绍了怎样快速搭建一个基于MVVMLight的程序http://www.cnblogs.com/whosedream/p/mvvmlight1.html算是简单入门了下,今天我们来做一个稍许 ...

  8. .Net简单图片系统-本地存储和分布式存储

    本地存储 所谓本地存储就是将上传图片保存到图片服务器的本地磁盘上. if (ConfigHelper.GetConfigString("SaveMode") == "Lo ...

  9. 提高Visual Studio开发性能的几款插件

    通过打开Visual Studio,单机TOOLS—Extensions and Updates-Online-Visual Studio Gallery(工具-扩展和更新-联网-Visual Stu ...

  10. 没有jquery的时候,你看看这个

    vjs var br = (function() { var ua = navigator.userAgent.toLowerCase(); browser = { iPhone: /iphone/. ...