日期:2014-05-16  浏览次数:20312 次

select 取值
select 里面有很多option
这些option都是用
lib2.options[lib2.options.length] = new Option(lib1.options[lib1.selectedIndex].text);
添加进去的,但是不应定都连续,因为有的时候填错了还会被删掉
lib2.options[i]=null;  
用这句删除的
所以,怎么才能取全部的值到数组呢?2楼附完整代码

------解决方案--------------------
<html> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<title>无标题文档 </title> 
<head> 
<script language="javascript" type="text/javascript">
function add() //添加选项 

with(document.form1) 

//alert("请求添加") 
var c = 0; //用来记录添加项是否重复的变量 
for(i = 0; i < lib2.options.length; i++) 

if(lib1.options[lib1.selectedIndex].text == lib2.options[i].text) 

c = 1 
alert("请不要重复添加") 
}

if(c != 1) 

lib2.options.add(new Option(lib1.options[lib1.selectedIndex].text,lib1.options[lib1.selectedIndex].text));

//alert("添加成功") 

}

function del() //删除选项 

with(document.form1) 

var len =lib2.options.length;
for(var i=(len-1);i>=0;i--)
{
if(lib2.options[i].selected==true) 
{
lib2.options[i]=null;
}


}
function submit_test() 

var arr=new Array();
var oSel=document.getElementById("lib2");
var oOption=oSel.getElementsByTagName("option");
for(var i=0,iOption=oOption.length;i<iOption;i++){
alert(oOption[i].value);
arr[i]=oOption[i].value;

}
return arr;


</script>