﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-borderland</title><link>http://www.blogjava.net/edward5937/</link><description>广告位招租</description><language>zh-cn</language><lastBuildDate>Thu, 07 May 2026 00:47:09 GMT</lastBuildDate><pubDate>Thu, 07 May 2026 00:47:09 GMT</pubDate><ttl>60</ttl><item><title>[JS]获取表单的引用</title><link>http://www.blogjava.net/edward5937/archive/2012/04/15/374231.html</link><dc:creator>tcid</dc:creator><author>tcid</author><pubDate>Sun, 15 Apr 2012 06:33:00 GMT</pubDate><guid>http://www.blogjava.net/edward5937/archive/2012/04/15/374231.html</guid><wfw:comment>http://www.blogjava.net/edward5937/comments/374231.html</wfw:comment><comments>http://www.blogjava.net/edward5937/archive/2012/04/15/374231.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/edward5937/comments/commentRss/374231.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/edward5937/services/trackbacks/374231.html</trackback:ping><description><![CDATA[<span style="font-weight: bold"><span style="font-weight: bold"></span>获取表单的引用</span> 
<div style="font-size: 12px"><wbr>在开始对表单进行编程前，必须先获取表单&lt;form&gt;的引用.有以下方法可以来完成这一操作。<br />1)采用典型的DOM树中的定位元素的方法 getElementById()，只要传入表单的id即可获得表单的引用:<br />var vform=document.getElementByIdx(&#8220;form1&#8221;);<br />2)还可以用document的forms集合,并通过表单 在form集合中的位置或者表单的name特性来进行引用:<br />var oform=document.forms[0];<br />var oform=document.forms[&#8220;formZ&#8221;];<br /><span style="font-weight: bold"><wbr>访 问表单字段</span><wbr><br />每个表单字段,不论它是按钮,文本框还是其它内容,均包含在表单的elements集合中.可以用它们的 name特性或者它们在集合中的位置来访问不同的字段:<br />Var oFirstField=oForm.elements[0];<br />Var oTextBox1=oForm.elements[&#8220;textBox1&#8221;];<br />此外还可以通过名字来直接访问字段,如:<br />Var oTextBox1=oForm.textbox1;<br />如果名字中有标记,则可以使用方括号标记:<br />Var oTextBox1=oForm[&#8220;text box 1&#8221;];<br /><span style="font-weight: bold"><wbr>最常见的访问表单字段的方法</span><wbr><br />最简单常用的访问表单元素的方法自然是 document.getElementByIdx(),举例如下:<br />&lt;input type="text" name="count"<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>value="" /&gt;<br />在JS中取得此元素内容的代码为:<br />var name=document.getElementByIdx("name").value<br />这种方法无论表单元素处于那个表单中甚至是不在表单中 都能凑效,一般情况下是我们用JS访问表单元素的首选.<br />鉴于document.getElementByIdx比较长,你可以用如下函数代替它:<br />function $(id){<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> return document.getElementByIdx(id);<br />}<br />把 这个函数放在共有JS库中,在jsp页面通过如下方法引用它:<br />&lt;head&gt;<br />&lt;title&gt;"記賬系统"添加资源页面&lt;/title&gt;<br />&lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"&gt;<br />&lt;script src="web/js/check.js" type="text/javascript"&gt;&lt;/script&gt;<br />&lt;link rel="stylesheet" rev="stylesheet" href="web/css/style.css"<br />type="text/css" /&gt;<br />&lt;/head&gt;<br />此后你就可以直接使用$访问表单元素中的内容:<br />var name=$("name").value;<br /><span style="font-weight: bold"><wbr>表单字段的共性</span><wbr><br />以下是所有表单字段(除了隐藏字段)<br />Disabled可以用来获取或设置表单控件是否被禁用.<br />Form特性用来指向字段所 在的表单.<br />Blur()方法使表单字段失去焦点.<br />Focus()方法使表单字段获得焦点.<br />当字段失去焦点是,发生blur 事件,执行onblur事件处理程序.<br />当字段获取焦点时,发生focus事件,执行onfocus事件处理函数.<br />当页面载入时将焦点 放在第一个字段<br />在body代码中如此书写:<br />&lt;body onload=&#8220;focusOnFirstElm()&#8221;&gt;<br />JS 函数如下书写:<br />Fucntion focusOnFirstElm(){<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> document.forms[0].elements[0].focus();<br />}<br />如果第一个字段不是隐藏字段此方法就是凑效的,如 果是的话把elements的下标改成非隐藏字段的下标即可.<br /><span style="font-weight: bold"><wbr>控制表单只被提交一次</span><wbr><br />由于Web的响应问题，用户有可能会点击多次提交按钮从而创建重复数据或是导致错误，我们可以使用 JS对提交按钮进行设置以让表单只被提交一次。<br />&lt;input type=&#8220;submit&#8221; value=&#8220;提交&#8221; onclick=&#8220;this.disabled=true；this.form.submit()&#8221;/&gt;<br />这里在点击提交按钮时执行了两句 JS代码，一次是this.disabled=true；这是让提交按钮被禁用；一次是this.form.submit()这是提交这个按钮所在的表单。<br /><span style="font-weight: bold"><wbr>检查用户在表单元素中的按键</span><wbr><br />为 控件添加 onkeydown事件处理，然后在函数查看keyCode，就能知道用户的按键，代码如下：<br />&lt;input type="text" name="test"<br />value="" onkeydown="testkey(this,event)"/&gt;<br />JS代码如下：<br />function testkey(obj,event){<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> alert(event.keyCode);<br />}<br />这种技巧在改善用户体验 如按回车键提交表单时很常用。</div><img src ="http://www.blogjava.net/edward5937/aggbug/374231.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/edward5937/" target="_blank">tcid</a> 2012-04-15 14:33 <a href="http://www.blogjava.net/edward5937/archive/2012/04/15/374231.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>