sel.onchange="f()"; 
/
sel.onchange=f;  这是有区别的

解决方案 »

  1.   

    应该是对的
     sel.onchange="f()"; 把f()当做字符串了
    不像在<select onchange="f()"
    sel.onchange=f
    或者sel.onchange=function(){alert("123")}
      

  2.   

    好像不能写onchange事件
    <div id="dogId" bgcolor="blue" style="width:100;height:100">
    <select onchange="f();">
    <option>1</option>
    <option>2</option>
    </select>
    </div> 
    <script type="text/javascript">
    function f(){alert("haha");}
    var sel=document.createElement("select"); 
    var  o1=document.createElement("option"); 
    o1.value="a"; 
    o1.id="o1";
    o1.innerHTML="1"; 
    var  o2=document.createElement("option"); 
    o2.value="b"; 
    o2.innerHTML="2"; 
    sel.appendChild(o1); 
    sel.appendChild(o2); 
    document.getElementById("dogId").appendChild(sel);   
    document.getElementById("o1").onchange="f()";   
    </script>