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>