还有一个问题是: 
   我在一个页面里同时使用vbscript 和 javascript, 本来我是先写了javascript函数,然后写vbscript的,浏览时状态栏就会报错, 当我把它们的位置换了一下,把vbscript写在了javascript的前面,其他内容没有任何变化,就没有错误了,这是什么原因啊? 本来是:
<script language="vbscript">
   ……
</script>
<script language = "JavaScript">
   ……
</script>
这样写浏览时状态栏会报错。
改成
<script language="JavaScript">
   ……
</script>
<script language = "vbscript">
   ……
</script>
后,就没有错误了,请问这是什么原因啊?
难道在同一个页面里同时用这两种语言,还有个先后顺序问题啊??

解决方案 »

  1.   

    问题一: 用转换函数把表达式转成数值, 如果原来不是数字, 转出来的值就是NaN, 可用isNaN函数判断
      

  2.   

    第二个问题: 函数定义要写在调用之前(不区分语言), 可能是你的一个函数写在javascript中再在vbscript里调用, 那就要把javascript那段放在前面
      

  3.   

    谢谢  GladisionBoy(Future...Use What) 第一个问题我知道了,第二个问题还是不明白,我在vbscript中并没有调用 javascript中的函数啊。我写这些函数是为了判断在表单中输入的数据格式和范围时候正确。另外,在vbscript中可以把焦点定到某个表单上吗?我在javascript中可以这样实现:form1.order_name.focus()但是在vbscript中,这样写好象不行,不知道有没有什么解决方法啊?
      

  4.   

    Call form1.order_name.focus() 行不行呢??我的意思是你在vbscript里调用了自己用javascript写的函数吗?

    <script language="vbscript">
    DoMessage
    Sub DoMessage()
        Call myjsfunc("haha!")
    End Sub
    </script>
    <script language="javascript">
    function myjsfunc(text)
    {
        window.alert(text);
    }
    </script>
    这是会出错的
    而这样是正确的,因为被调用函数要写出现:
    <script language="javascript">
    function myjsfunc(text)
    {
        window.alert(text);
    }
    </script>
    <script language="vbscript">
    DoMessage
    Sub DoMessage()
        Call myjsfunc("haha!")
    End Sub
    </script>你再试试