• with(){}方法


    <html>
    <head>
    <script type="text/javascript">
    function validate_email(field,alerttxt)
    {
    with (field)
    {
    apos=value.indexOf("@")
    dotpos=value.lastIndexOf(".")
    if (apos<1||dotpos-apos<2) 
    {alert(alerttxt);return false}
    else {return true}
    }
    }

    function validate_form(thisform)
    {
    with (thisform)
    {
    if (validate_email(email,"Not a valid e-mail address!")==false)
    {email.focus();return false}
    }
    }
    </script>
    </head>

    <body>
    <form action="submitpage.htm"onsubmit="return validate_form(this);" method="post">
    Email: <input type="text" name="email" size="30">
    <input type="submit" value="Submit"> 
    </form>
    </body>

    </html>

    这个是一个网站教程的例子,相信很多人都会有疑问,里面在with ( )中嵌套了if,这个with()是什么方法?这个with()就是和if 一起用的吗?

    其实with()和if()没有关系。

    with(obj)作用就是将后面的{}中的语句块中的缺省对象设置为obj,那么在其后面的{}语句块中引用obj的方法或属性时可以省略obj.的输入而直接使用方法或属性的名称。比如:
    不用with()时:
    function validate_email(field,alerttxt){
    field.apos=value.indexOf("@")
    field.dotpos=value.lastIndexOf(".")
    if (field.apos<1 || field.dotpos-field.apos<2) {
    alert(alerttxt);
    return false
    }else {
    return true
    }
    }

    用了with(field)后,上面函数中的field.都可以省略了,减少了输入的工作量。

    with对象能够使我们很方便的使用某个对象的一些属性,而不用每次都去写
    对象名.属性 的形式,直接使用对象名。

  • 相关阅读:
    OpenERP Framework API存档
    OpenERP 7 picking order 继承需要注意的地方
    Unity战斗系统之AI自主决策
    简易2D横版RPG游戏制作
    UGUI之Canvas Group
    UGUI之Canvas和EventSystem
    NGUI之scroll view的制作和踩坑总结
    NGUI之Toggle实现单选框
    Unity中对象池的使用
    继承MonoBehaviour类的优缺点和相关报错
  • 原文地址:https://www.cnblogs.com/wangliuyong/p/9269953.html
Copyright © 2020-2023  润新知