`

JS和DOM的表单

 
阅读更多

表单处理分成五个部分:1、获取表单对象;2、访问表单元素;3、表单元素共性;4、提交表单;5、重置表单。

一、获取表单对象
1、使用ID来获取表单对象 var oForm = document.getElementByIdx("form1");
2、使用document.forms数组索引来获取表单对象 var oForm = document.forms[0];
3、使用document.forms数组名称属性来获取表单对象 var oForm = document.forms["formZ"];

参考下面的例子,一个html文档中允许多个表单。
document.getElementByIdx("form1") ==  document.forms[0] == document.forms["formZ"]
document.getElementByIdx("form2") ==  document.forms[1] == document.forms["formY"]

二、访问表单域中的元素
1、使用表单的elements(数组)属性。表单中的按钮,文本框或者其他表单元素集合都可以使用这些元素的name属性,抑或是索引值来访问表单元素
 var oForm = document.forms[0];    ///获取表单对象
var oFirstField = oForm.elements[0]; //使用索引值0 获取第一个表单元素
var oTextbox1 = oForm.elements[“textbox1”];//使用表单元素的name属性textbox1来获取该元素
2、简写模式,把表单元素的name属性textbox1当作表单的属性来访问该元素
var oTextbox1 = oForm.textbox1; //get the field with the name “textbox1”
3、把表单对象当作一个数组,用name属性访问表单对象
var oTextbox1 = oForm[“text box 1”]; //get the field with the name “text box 1”

下面这个例子当中 oForm.textbox1 == oForm[“textbox1”] == oForm.elements[“textbox1”] == oForm.elements[1]

三、表单域(元素)的共性(共同特征)
所有的表单元素 按钮 复选框 文本域 下拉菜单== 除了“隐藏域”之外都有共同的属性,方法和事件:
1、都具有disabled属性,即禁用该表单元素,使得只具有其外形特征,而不具备其功能
2、都具有form属性来指向这个某表单,表示是该表单的一部分
3、都具有blur()方法,使得当前表单域(元素)失去焦点
4、都具有focus()方法, 使得当前表单域(元素)获取焦点
5、都有onblur()事件,当表单域失去焦点时触发事件
6、都有onfocus()事件,当表单域获得焦点时触发事件

For example:
var oField1 = oForm.elements[0];
var oField2 = oForm.elements[1];
//禁用第一个表单元素
oField1.disabled = true;
//第二个表单元素获得焦点
oField2.focus();
//第一个表单元素的form属性是否指向(等于)oform表单
alert(oField1.form == oForm); //输出 “true”

四、提交表单
1、下面是两个按钮,一个是提交按钮,一个是图片按钮。提交表单的时候用alert()警告获取哪个按钮提交表单
<input type=”submit” value=”Submit” /> <!-- submit button -->
<input type=”image” src=”submit.gif” /> <!-- image button -->
<form method=”post” action=”javascript:alert(‘Submitted’)”>

2、不是提交表单按钮也可以使用oForm.submit(); 来提交表单,譬如
<input type=”button” value=”Submit Form” onclick=”document.forms[0].submit()” />

3、阻止表单提交
可以使用getEvent截取表单事件,使用preventDefault()来阻止该事件发生
function handleSubmit() {
var oEvent = EventUtil.getEvent();
oEvent.preventDefault();
}

4、只允许提交一次表单(防止重复提交)
这里有一个表单提交按钮
<input type=”submit” value=”Submit” />
我们可以添加onclick事件,当点击该按钮之后this.disabled=true;禁用该按钮,然后提交表单。
<input type=”button” value=”Submit”
onclick=”this.disabled=true; this.form.submit()” />

五、重置表单
(1)使用reset按钮
<input type=”reset” value=”Reset Values” />
(2)使用oForm.reset() 方法来重置表单

总结:
1、获取表单对象可以用DOM方法getElementById,数组索引 document.forms[0] 数组名称 document.form["form1"] 三种方法
2、访问表单元素可以使用oForm.elements[0] 表单.elements属性索引,或name属性。或者把表单对象当作数组oForm["textbox1"],把表单元素当作表单的属性oForm.textbox1
3、表单元素除了hiden隐藏域之外,都具有disabled是否禁用属性,form属性表示该元素属于哪个表单,blur()失去焦点 focus()获得焦点。onblur() onfocus()事件这六个成员(属性|方法)
4、提交按钮提交表单,submit()方法提交表单,如何只允许提交表单一次
5、重置按钮重置表单,reset()方法重置表单 

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    基于JavaScript和DOM的动态表单设计及数据提交.pdf

    基于JavaScript和DOM的动态表单设计及数据提交.pdf

    【JavaScript源代码】JavaScript中BOM和DOM详解.docx

    JavaScript中BOM和DOM详解  目录 BOM(浏览器对象模型) 1. window 获取浏览器c窗口尺寸 2. screen 获取电脑屏幕大小 3. window 开启关闭窗口 4. 浏览器事件 5. location 6. history 7. navigator 获取浏览器相关...

    js表格操作,DOM实现数据动态增删查改

    原生JavaScript,对数据表格进行操作,使用DOM实现数据的动态操作,包括增加、删除、查询、修改。

    [JavaScript.DOM高级程序设计](加)桑贝斯.扫描版.part1.rar

     3.1 DOM不是JavaScript,它是文档   3.2 DOM的级别   3.2.1 DOM 0 级   3.2.2 DOM 1 级   3.2.3 DOM 2 级   3.2.4 DOM 3 级   3.2.5 哪个级别适合你   3.3 创建示例文档   3.3.1 创建DOM...

    DOM练习-onkeydown事件--onmouseover事件-左侧菜单栏点击收放-图片切换-checkbox全选-表单校验

    【前端 HTML+CSS+JavaScript(JS)】DOM练习-onkeydown键盘事件-用wasd移动图片的位置 带注释/总结 【前端 HTML+CSS+JavaScript(JS)】DOM练习-onmouseover事件 鼠标悬浮切换图片 带注释/总结 【前端 ...

    js操作dom.xmind

    自己写的js操作DOM的思维导图,主要有如下内容:1、什么是DOM,对于DOM的介绍。2、获取DOM节点,通过id / 标签名 / 表单元素获取元素节点,获取属性节点,获取内容节点

    JavaScript 1.8.5 英文第八章 DOM操作HTML表单

    JavaScript 1.8.5 英文第八章 DOM操作HTML表单

    DOM脚本编程

    本书原名《DOM Scripting》,作者Jeremy Keith,讲述的是DOM和JavaScript基本概念和编程思路,如果将它作为一本程序员指南或参考手册,你会大失所望。但是一旦通读了本书,则会有一种眼前一亮豁然开朗的感觉:原来...

    JS客户端表单验证框架

    支持配置文件 和 标签使用,不需要写复杂的js表单验证函数,里面还有使用说明文档

    DOM基础教程之使用DOM控制表单

    javascript中可以很方便的操作表单,例如获得表单数据进行有效验证,自动给表单域赋值,处理表单事件等。 此时每个form都解析为一个对象,即form对象,可以通过document.forms集合来引用这些对象,例如一个nama属性...

    JavaScript_DOM编程

    forms数组:所有表单类数组 anchors数组 links数组 images数组 scripts数组 applets数组 all数组:所有标签数组 styleSheets数组:样式表对象数组 body对象:嵌入在body标签内的标签可以作为body的子元素...

    JavaScript和HTML DOM的区别与联系及Javascript和DOM的关系

    JavaScript 被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。 HTML DOM HTML DOM 是 W3C 标准(是 HTML 文档对象模型的英文缩写,Document Object Model for HTML)。 ...

    JavaScript DOM高级程序设计 Part II

    JavaScript DOM高级程序设计 JavaScript进阶/写库必备。文档带有章节目录。 第一章 遵循最佳实践 第二章 创建可重用的对象 第三章 DOM2核心和DOM2 HTML 第四章 响应用户操作事件 第五章 动态修改样式和层叠样式表 第...

    [JavaScript.DOM高级程序设计](加)桑贝斯.扫描版.part3.rar

     3.1 DOM不是JavaScript,它是文档   3.2 DOM的级别   3.2.1 DOM 0 级   3.2.2 DOM 1 级   3.2.3 DOM 2 级   3.2.4 DOM 3 级   3.2.5 哪个级别适合你   3.3 创建示例文档   3.3.1 创建DOM...

    [JavaScript.DOM高级程序设计](加)桑贝斯.扫描版.part2.rar

     3.1 DOM不是JavaScript,它是文档   3.2 DOM的级别   3.2.1 DOM 0 级   3.2.2 DOM 1 级   3.2.3 DOM 2 级   3.2.4 DOM 3 级   3.2.5 哪个级别适合你   3.3 创建示例文档   3.3.1 创建DOM...

    JavaScript表单练习.zip

    1. 掌握JavaScript脚本的调用和基本语法; 2. 掌握JavaScript常用内置对象的基本应用; 3. 掌握BOM和window消息对话框的使用; 4. 掌握HTML DOM动态网页设计技术。

    JS选取DOM元素常见操作方法实例分析

    本文实例讲述了JS选取DOM元素常见操作方法。分享给大家供大家参考,具体如下: JS选取DOM元素的方法 注意:原生JS选取DOM元素比使用jQuery类库选取要快很多 1、通过ID选取元素 document.getElementById('myid'); 2...

    JavaScript DOM高级程序设计 Part I

    JavaScript DOM高级程序设计 JavaScript进阶/写库必备。文档带有章节目录。 第一章 遵循最佳实践 第二章 创建可重用的对象 第三章 DOM2核心和DOM2 HTML 第四章 响应用户操作事件 第五章 动态修改样式和层叠样式表 第...

    JavaScript-DOM-Injector:基于表单的自动化 HTML 构建器

    JavaScript-DOM-注入器 基于表单的自动化 HTML 构建器。 依赖关系 支持 JavaScript 的浏览器(不需要 JQuery 或其他东西) 把它放在你的&lt;body&gt;底部 &lt; script src =" js/injector.js " &gt; &lt;/ script &...

    JavaScript-and-DOM-Manipulation--Week-10:JavaScript和DOM操作-第十周

    JavaScript和DOM操作-第10周 第10周研究:列出并说明使我们能够从DOM中选择元素JavaScript方法。 什么是文件对象? 没有从DOM中选择元素的文档对象上还有哪些其他可用方法? 您本周学到的最喜欢的东西是什么? ...

Global site tag (gtag.js) - Google Analytics