<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>test.html</title>

    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    
    <script type="text/javascript">
         document.getElementById('test').onclick=function(){alert('没事干点我干吗?')}    
    </script>  </head>  <body>
     <span id="test" class="multi_delete">删除</span> 
  </body>
</html>这个代码的js竟然不能执行 我简直是无语 这哪里错了嘛 唉 不知道说什么好了 真**麻烦

解决方案 »

  1.   

    呵呵,楼主可以试试把script那断换成下面这的代码    <script type="text/javascript">
            window.onload=function(){ document.getElementById('test').onclick=function(){alert('没事干点我干吗?')}    };
        </script>为啥要把代码放在window.onload事件里呢,主要是因为必先有span元素,才能以用getElementById,否则你是得不到span元素的。
      

  2.   

    你直接在Script代码端中执行这个语句。HTML其他控件还没加载完就执行了。这样肯定找不到test对象了。一定会报错:
    “document.getElementById("...")为空或不是对象。”之类的错误。
    要么你把这句话写在HTML代码的最后,要么就按照1楼所说,使用window.onload去执行。
      

  3.   

    调用js的时候控件还没加载,放在控件后写就行了
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title>test.html</title>
        
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="this is my page">
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      </head>  <body>
         <span id="test" class="multi_delete">删除</span> 
      </body>
        <script type="text/javascript">
             document.getElementById('test').onclick=function(){alert('没事干点我干吗?')}    
        </script>
    </html>
      

  4.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title>test.html</title>
        
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="this is my page">
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        
      
      </head>  <body>
         <span id="test" class="multi_delete">删除</span> 
      </body>
    </html>   
      <script type="text/javascript">  
            //换个位置,因为放前面的话span还没有加载就执行document.getElementById('test'),当然不行
             document.getElementById('test').onclick=function(){alert('没事干点我干吗?')}    
        </script>
      

  5.   

    document.getElementById('test').onclick=function(){alert('没事干点我干吗?')}  
    这里获取不了“test” 这个属性,将script 的代码放到
    <span id="test" class="multi_delete">删除</span> 
    后面