楼主,我给你一个我写的例子data为返回的list其中,我把要动态生成的select 的名字放到data[0]里面,然后后面才是要生成的内容,相信你很快可以看懂,后面还有些我的笔记,看看你就可以搞定了。//处理返回的数据function ajaxCallBack(data){$E(data[0]).options.length=0;var newop=document.createElement("option");newop.value="";newoptext=document.createTextNode(""); newop.appendChild(newoptext); $E(data[0]).appendChild(newop);for(var i=1;i<data.length;i++){var newop=document.createElement("option");newop.value=data;newoptext=document.createTextNode(data[++i]); newop.appendChild(newoptext); $E(data[0]).appendChild(newop);}alert($E(data[0]).desc+"下拉列表已刷新!");$E(data[0]).value=document.all.keepId.value;}1.动态创建select function createselect(){ var myselect = document.createelement("select");myselect.id = "myselect";document.body.appendchild(myselect); }2.添加选项option function addoption(){ //根据id查找对象, var obj=document.getelementbyid('myselect'); //添加一个选项 obj.add(new option("文本","值"));}3.删除所有选项option function removeall(){ var obj=document.getelementbyid('myselect'); obj.options.length=0; }4.删除一个选项optionfunction removeone(){ var obj=document.getelementbyid('myselect'); //index,要删除选项的序号,这里取当前选中选项的序号 var index=obj.selectedindex; obj.options.remove(index);}