fuction hello(id){ 
alert(id); 
} for(var i=1;i<4;i++){
span=document.createElement("span"); 
span.id="FT"+i; 
span.onclick='hello()';我想要点击时调用hello()方法; 
span.innerHTML='hello'; 
span.style.background="yellow"; 
document.getElementById('T'+i).appendChild(span); 
}
HTML部分是 
<div id="T1"> </div> 
<div id="T2"> </div> 
<div id="T3"> </div> 
就是达到这个效果: 
<div id="T1"> <span onclick="hello('FT1')" id="FT1">hello FT1</span>
<div id="T2"> <span onclick="hello('FT2')" id="FT2">hello FT2</span>
<div id="T3"> <span onclick="hello('FT3')" id="FT3">hello FT3</span>

解决方案 »

  1.   

    span不加var定义那就是全局变量,相当于你就见了一个span元素。写js还是最好按标准些,语法要是乱了很难调
      

  2.   


    <html>
    <body>
    HTML部分是 
    <div id="T1"> </div> 
    <div id="T2"> </div> 
    <div id="T3"> </div> 
    <script>function hello(id){ 
    alert(id); 
    } for(var i=1;i<4; i++){ 
    span=document.createElement("span"); 
    span.id="FT"+i; 
    span.onclick=function(){hello(this.id)}; //我想要点击时调用hello()方法; 
    span.innerHTML='hello'; 
    span.style.background="yellow"; 
    document.getElementById('T'+i).appendChild(span); 

    </script>
    </body>
    </html>
      

  3.   

    <html>
    <body>
    HTML部分是 
    <div id="T1"> </div> 
    <div id="T2"> </div> 
    <div id="T3"> </div> 
    <script>function hello(id){ 
        alert(this.id); 
    } for(var i=1;i<4; i++){ 
        span=document.createElement("span"); 
        span.id="FT"+i; 
        span.onclick=function(){hello.call(this)}; //也可以这样; 
        span.innerHTML='hello'; 
        span.style.background="yellow"; 
        document.getElementById('T'+i).appendChild(span); 

    </script>
    </body>
    </html>