注册 登录
编程论坛 JavaScript论坛

Form表单聚焦于第一个字段问题-大家看一下

ztslove 发布于 2010-07-26 18:24, 643 次点击
程序代码:

<!--下面的 代码1 和 代码2 都是在表单中实现 光标聚焦于第一个字段的功能 ,这两段代码  有没有什么区别 ?用哪个好一点呢?  还有就是 在form 的操作里面 还有一些这样的 方法 TextUtil.block() TextUtil.allowChars  什么的 想这些 方法 能不能直接用代码1的方式写呢?  -->


<!--代码1开始-->
<!--script language="javascript">
    function focu() {   
        if (document.forms.length > 0){
                for(var i = 0; i<document.forms[0].elements.length;i++ ){
                    var oInput = document.forms[0].elements[i];
                    if (oInput.type != "hidden") {
                        oInput.focus();
                        return;
                    }
                }
            }

        }
</script-->
<!--代码1结束-->


<!--代码2开始-->

<script language="javascript">
   
var FormUtil = new object;

   FormUtil.focusonFirst =  function () {   
        if (document.forms.length > 0){
                for(var i = 0; i<document.forms[0].elements.length;i++ ){
                    var oInput = document.forms[0].elements[i];
                    if (oInput.type != "hidden") {
                        oInput.focus();
                        return;
                    }
                }
            }

        }
</script>
<!--代码2结束-->
<body onload="FormUtil.focusonFirst()">

<form name="form1">
<input name="text1" type="text" value="">
<input name="text2" type="text" value="">
<input name="text3" type="text" value="">
<input name="text4" type="text" value="">
</form>
</body>
2 回复
#2
gupiao1752010-07-27 00:37
第一种写法一般应用在无需代码重用,适合作为新手参考和比较直白的代码写法,第二种FormUtil.focusonFirst是JS里面向对象的一种写法,具体可以参考JS高级教程里的JS面向对象的章节!书上是说最好都用这种结构去写,其目的是为了大刑项目的代码高度重用,节约时间进行其他功能的开发,但是实际上我感觉简单的地方也真没这个必要,看具体用途,实现什么功能,什么该封装,什么不该封,也就是写成面向对象的语句,像前台常用的JQUERY就是大量用到的这种写法,进行了高度的封装!用熟了JQUERY,就等于代码的高度化重用了,其内部代码一般人根本无法全部看懂每一句的含义,说实话我也看不太懂老外写的那些东西,到现在也只能看理解一些常用方法的代码!
#3
ztslove2010-07-27 10:13
呵呵谢谢 啊   好像有点明白了 ···
1