今天遇到一个奇怪的问题:
       t1 = $("#t1").val();
    报错;
    改为
       s1 = $("#t1").val();
    正确。
   这是什么原因???

解决方案 »

  1.   

    用var t1 = $("#t1").val();
    wan
      

  2.   

    t1 s1 没用申明  系统可以自动声明两个全局变量
    因为页面里有 定义了么个元素的 id='t1'
    所以在IE下 就会报错!你把页面里的 id=t1 去掉t1=123;
    alert(t1)
    就不会报错了
      

  3.   


    <script type="text/javascript">
    $(function(){
    t1=$('.t1').val();
    alert(t1)
    });
    </script>
    <input type="text" class="t1"  value="123"/>不会报错
      

  4.   

    因为IE浏览器可以直接id.属性的
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
     <HEAD>
      <TITLE> New Document </TITLE>
     <meta http-equiv="content-type" content="text/html; charset=utf-8" />
     
      <SCRIPT LANGUAGE="JavaScript">
      <!--
     function init(){
    alert(t1.value)
     }
      //-->
      </SCRIPT>
     </HEAD>
     <BODY onload="init()">
    <INPUT id="t1" TYPE="text" value="123">
     </BODY>
    </HTML>
      

  5.   


    +1 IE浏览器可以直接id.属性的   这样说最清楚!