1. 获取表单的引用
Eg1. var oForm = document.getElementByIdx(“form 1”);
Eg2. var oForm = document.forms[0]; //获取第一个form
Eg3. var oForm = document.forms[“form1”]; //根据名称
2. 访问表单字段
Eg1. var oFirstField = oForm.elements[0]; // 获取第一个表单元素
Eg2. var oTextbox1 = oForm.elements[“textbox1”]; //获取名称为textbox1的表单元素
Eg3. var oTextbox1 = oForm.textbox1; //获取名称为textbox1的表单元素
在名称中有空格时,可以使用方括号标记:
var oTextbox1 = oForm[“text box 1”];
说明:也可以用document.getElementByIdx()和表单字段的id来直接获取元素。
3. 表单字段的共性
注意:隐藏字段只支持form特性。
4. 聚焦于第一个字段
可用如下代码实现:
document.forms[0].elements[0].focus();
但这样做还有点问题,如果表单的某个元素是隐藏字段,这个字段是不支持focus()方法的,这时候会出现JavaScript错误。我们需要的是将焦点放在第一个可见的表单字段上,可参考如下实现:
var FormUtil = new Object;
FormUtil.focusObject = function() {
}
}
}
}
调用举例如下:
<body onload=”FormUtil.focusOnFirst()”>
5. 提交表单
在普通HTML中,必须使用提交按钮或扮演提交按钮角色的图像来提交表单:
<input type=”submit” value=”提交” />
<input type=”image” src=”submit.gif” />
当用户点击其中一个按钮,无需其他编码,就可以提交表单。如果按回车键,并存在这些按钮,浏览器就会认为是点击了按钮。
可以通过action特性中加入警告框来检测表单是否已被提交:
<form method=”post” action=”javascript:alert(‘提交表单’)”>
还可以调用submit()方法提交表单:
Eg1. oForm.submit();
Eg2. <input type=”button” value=”提交” onclick=”document.forms[0].submit()” />
可以使用onsubmit()方法来检查表单输入的合法性:
<form method=”post” action=”javascript:alert(‘提交表单’)” onsubmit=”handleSubmit()”>
6. 仅提交一次
为防止表单多次提交,可使用如下方法:
将<input type=”submit” value=”提交”/>替换成:
<input type=” button” value=”提交” onclick=”this.disabled=true;this.form.submit()”/>
说明:不使用提交按钮并用onclick()来禁用它的原因是,按钮其实在表单提交前就已被禁用,这将导致表单不被提交。
7.重置表单
Eg1. <input type=”rest” value=”重置”/>
Eg2. <form method=”post” action=”javascript:alert(‘提交’)” onreset=”alert(‘正在重置’)” />
Eg3. <input type=”button” value=”重置” onclick=”document..forms[0].reset()” />
三.
Eg1. <input type=”text” size=”25” maxLength=”50” value=”阿蜜果” name=”nickName” />
Eg2. <textarea rows=”25” cols=”5”>文本值</textarea>
1.
eg1. var oTextbox1 = document.getElementByIdx(“txt1”);
eg2. var oTextbox1 = document.getElementByIdx(“txt1”);
2.
可使用select()方法,调用该方法前,文本框必须首先获取焦点。参考代码阿如下:
var oTextbox1 = document.getElementByIdx(“txt1”);
oTextbox1.focus();
oTextbox1.select();
3.
4.
Eg1. <input type=”text” onfocus=”this.select()” />
Eg2. <textarea onfocus=”this.select()”></textarea>
5.
当某个文本框只允许接受指定数量的字符串时,常需要自动切换到下一个字段,让我们来看看其实现:
FormUtil.tabForward = fuction(oTextbox) {
if (oForm.elements[oForm.elements.length- 1] == oTextbox
&& oTextbox.value.length == oTextbox.getAttribute(“maxLength”)) {
}
}
}
}
}
}
调用举例: