2014-03-25 54 views
0

我的div元素是:DIV不是在JavaScript射击onclick事件

<div id="div"></div> 
下面

是JavaScript的:

function makediv() { 
     var divmy = document.getElementById("div"); 
     var row =''; 
     var color='#ccc'; 
     for(var i=0;i<2;i++) 
     { 
divmy.innerHTML += " <div class='dynamic' id='inner"+i+"' onclick=searchFilterations(i)>"+i+"</div> "; 
      color='black'; 
     } 
    } 
    function searchFilterations(e){ 
    alert(e); 
    } 

问题是:searchFilterations()函数不射击click.what是错误? 这里是提琴: http://jsfiddle.net/cjT4s/4/

+0

jsFiddle中的错误设置 - > http://jsfiddle.net/adeneo/cjT4s/6/ – adeneo

+0

请参阅[Here](http://jsfiddle.net/zaheerahmed/cjT4s/8/)。设置包裹在身体选项将使其工作或绑定到身体负荷。 –

+0

谢谢,它的工作原理,什么是错误的设置..你可以告诉我吗? – MemberB

回答

0

请致电makediv功能onload事件

window.onload = makediv; 

function makediv() { 
    var divmy = document.getElementById("div"); 
    var row =''; 
    var color='#ccc'; 
    for(var i=0;i<2;i++) 
    {  

    // divmy.innerHTML += " <div style='width: 100px;height: 30px;background-color:"+color+" ;' onclick=javascript:alert("+i+")></div> "; 

     divmy.innerHTML += " <div class='dynamic' id='inner"+i+"' onclick=searchFilteration("+i+")>"+i+"</div> "; 
     color='black'; 
    } 
} 
function searchFilteration(i){ 
alert(i); 
} 

FIDDLE DEMO

0

window.searchFilteration = function (i) { ... }试试这个:

makediv(); 

function makediv() { 
    var divmy = document.getElementById("div"); 
    var row =''; 
    var color='#ccc'; 
    for(var i=0;i<2;i++) 
    {  
     divmy.innerHTML += " <div class='dynamic' id='inner"+i+"' onclick='searchFilteration("+i+")'>"+i+"</div> "; 
     color='black'; 
    } 
} 
window.searchFilteration = function (i){ 
alert(i); 
} 

FIDDLE DEMO