<input type=button onclick="add()" value=add>
<div id=a></div>
<script>
function add()
{
 o = document.createElement("select")
 o.options[o.options.length] = new Option("aaaaaaaaaaaaaaaa","")
 o.options[o.options.length] = new Option("b","b")
 o.options[o.options.length] = new Option("c","c")
 //o.onchange=r
 //都可以
 o.attachEvent("onchange",r)
 a.appendChild(o)
}
function r()
{
alert("ok")
}
</script>

解决方案 »

  1.   

    谢谢!
      不过,我这边的select是系统已经生成了,我没有办法去用o = document.createElement("select")。这怎么办?能不能从document里检索出我要的select, 怎么加能不能加 o.attachEvent("onchange",r)呢?
      

  2.   

    o=document.getElementsByName("selectName")[0]
    http://community.csdn.net/Expert/topic/4711/4711080.xml?temp=.2651483
      

  3.   

    1:先去取得生成的select集,比如:document.getElementsByTagName("SELECT");//这得到的是当前页的所有select,这一个数组;
    2:再用循环逐个去追加你要的事件selectes[i].onchange = function () {//your code!}