<form name="Form1">
<script language="JavaScript">
function ToGo()
{  
SelectTotal('city');
SelectTotal('position_type');
SelectTotal('company_type');
   //window.Form1.action="ti1.asp";
   //window.Form1.submit();
}function SelectTotal(ObjName)
{ ObjID = GetObjID(ObjName);
  if (ObjID != -1)
  { for (i=0; i<document.Form1.elements[ObjID].length; i++)
      document.Form1.elements[ObjID].options[i].selected = true;
  }
}        
        
function GetObjID(ObjName)
{ for ( var ObjID=0; ObjID < window.Form1.elements.length; ObjID++ )
      if (window.Form1.elements[ObjID].name == ObjName )
      {  return(ObjID);
         break;
      }
  return(-1);
}
function IsSelected(ID, Value)
{ if (ID != -1 && Value != "")
  {  for (var cc=0; cc<document.Form1.elements[ID].length; cc++ )
     {   if (document.Form1.elements[ID].options[cc].value == Value)
            return true;
     }
     return false;
  }
  return false;
}
function HasTotal(ID)
{ if (ID != -1 )
  {  for (var cc=0; cc<document.Form1.elements[ID].length; cc++ )
     {   if ( document.Form1.elements[ID].options[cc].selected )
         {  if (document.Form1.elements[ID].options[cc].value == "0000")
            {  return true;
            }
         }
     }
     return false;
  }
  return false;
}
function AppendItem(ObjName, DesName)
{ ObjID    = GetObjID(ObjName);
  DesObjID = GetObjID(DesName);
  if (ObjID != -1 && DesObjID != -1)
  {  if ( IsSelected(DesObjID, "0000") )
        window.alert("已包含");
     else
     {  if ( HasTotal(ObjID) )
        {  document.Form1.elements[DesObjID].length = 0;
           document.Form1.elements[DesObjID].options[0]= new Option("---不限---", "0000");        }
        else
        {  if (document.Form1.elements[DesObjID].length == 5)
              window.alert("最多选五项。");
           else
           {  //GET SELECTED ITEM NUMBER
              SelNum = 0;
              for (var j=0; j<document.Form1.elements[ObjID].length; j++)
              {   if ( document.Form1.elements[ObjID].options[j].selected)
                  SelNum ++;
              }
              if ((SelNum + document.Form1.elements[DesObjID].length) > 5)
                 window.alert("最多选五项。");
              else
              {  //add
                 for (j=0; j<document.Form1.elements[ObjID].length; j++)
                 {   if (document.Form1.elements[ObjID].options[j].selected)
                     {  //GET VALUE
                        dd = document.Form1.elements[ObjID].options[j].value;
                        if (!IsSelected(DesObjID, dd))
                        {  //GET LENGTH
                           DesLen = document.Form1.elements[DesObjID].length;
                           // NEW OPTION
                           document.Form1.elements[DesObjID].options[DesLen]= new Option(document.Form1.elements[ObjID].options[j].text, document.Form1.elements[ObjID].options[j].value);
                        }
                        else
                           window.alert("此选项已选择。");                     }
                 }
              }
           }
        }
     }
     //CLEAR
     for (j=0; j<document.Form1.elements[ObjID].length; j++)
          document.Form1.elements[ObjID].options[j].selected = false;
  }
}function RemoveItem(ObjName)
{ ObjID = GetObjID(ObjName);
  if ( ObjID != -1 )
  {  var  check_index = new Array();
     for (i=window.Form1.elements[ObjID].length-1; i>=0; i--)
     {   if (window.Form1.elements[ObjID].options[i].selected)
         {  check_index[i] = true;
            window.Form1.elements[ObjID].options[i].selected = false;
         }
         else
            check_index[i] = false;
     }
     for (i=window.Form1.elements[ObjID].length-1; i>=0; i--)
     {   if (check_index[i])
             window.Form1.elements[ObjID].options[i] = null
     }
  }
}
</script>
工作地点:<script language='javascript'>
<!--
function initprovince()
{
province  = new Array();
province[0] = new Array();
province[0][0] ='*';
province[0][1] ='--请选择--';
province[1] = new Array();
province[1][0] ='北京';
province[1][1] ='北京';
province[2] = new Array();
province[2][0] ='上海';
province[2][1] ='上海';
province[3] = new Array();
province[3][0] ='天津';
province[3][1] ='天津';
province[4] = new Array();
province[4][0] ='重庆';
province[4][1] ='重庆';
province[5] = new Array();
province[5][0] ='安徽';
province[5][1] ='安徽';
province[6] = new Array();
province[6][0] ='甘肃';
province[6][1] ='甘肃';
province[7] = new Array();
province[7][0] ='福建';
province[7][1] ='福建';
province[8] = new Array();
province[8][0] ='广东';
province[8][1] ='广东';
province[9] = new Array();
province[9][0] ='广西';
province[9][1] ='广西';
province[10] = new Array();
province[10][0] ='贵州';
province[10][1] ='贵州';
province[11] = new Array();
province[11][0] ='海南';
province[11][1] ='海南';
province[12] = new Array();
province[12][0] ='河北';
province[12][1] ='河北';
province[13] = new Array();
province[13][0] ='河南';
province[13][1] ='河南';
province[14] = new Array();
province[14][0] ='黑龙江';
province[14][1] ='黑龙江';
province[15] = new Array();
province[15][0] ='湖北';
province[15][1] ='湖北';
province[16] = new Array();
province[16][0] ='湖南';
province[16][1] ='湖南';
province[17] = new Array();
province[17][0] ='吉林';
province[17][1] ='吉林';
province[18] = new Array();
province[18][0] ='江苏';
province[18][1] ='江苏';
province[19] = new Array();
province[19][0] ='江西';
province[19][1] ='江西';
province[20] = new Array();
province[20][0] ='辽宁';
province[20][1] ='辽宁';
province[21] = new Array();
province[21][0] ='内蒙古';
province[21][1] ='内蒙古';
province[22] = new Array();
province[22][0] ='宁夏';
province[22][1] ='宁夏';
province[23] = new Array();
province[23][0] ='青海';
province[23][1] ='青海';
province[24] = new Array();
province[24][0] ='山东';
province[24][1] ='山东';
province[25] = new Array();
province[25][0] ='山西';
province[25][1] ='山西';
province[26] = new Array();
province[26][0] ='陕西';
province[26][1] ='陕西';
province[27] = new Array();
province[27][0] ='四川';
province[27][1] ='四川';
province[28] = new Array();
province[28][0] ='西藏';
province[28][1] ='西藏';
province[29] = new Array();
province[29][0] ='新疆';
province[29][1] ='新疆';
province[30] = new Array();
province[30][0] ='云南';
province[30][1] ='云南';
province[31] = new Array();
province[31][0] ='浙江';
province[31][1] ='浙江';
province[32] = new Array();
province[32][0] ='香港特别行政区';
province[32][1] ='香港特别行政区';
province[33] = new Array();
province[33][0] ='澳门特别行政区';
province[33][1] ='澳门特别行政区';
province[34] = new Array();
province[34][0] ='台湾';
province[34][1] ='台湾';
}
function initprovinceitem(myfrm,selected)
{  
var i
for(i = 0; i<=province.length-1; i++)
{
if (province[i][0] == selected )
document.write('<option value=' + province[i][0] + ' selected>' +  province[i][1] + '</option>\n');
else
document.write('<option value=' + province[i][0] + '>' +  province[i][1] + '</option>\n');  
}
}
//-->
</script>
 
<script language=javascript>
<!--
initprovince();
//-->
</script>
                <select name="city2" style="width:150" size="5" multiple>
                  <script language=javascript>
<!--
initprovinceitem(document.form1,'');
//-->
</script>
                </select>                <input onClick="JavaScript:AppendItem('city2','city')" type=button value="添加>>" name=Input>                <input onClick="JavaScript:RemoveItem('city')" type=button value="<<删除" name=Input2>                <select name="city" style="width:150" size="5" multiple>
                   
                </select>
</form>

解决方案 »

  1.   

    <form name="Form1">
    <script language="JavaScript">
    function ToGo()
    {  
    SelectTotal('city');
    SelectTotal('position_type');
    SelectTotal('company_type');
       //window.Form1.action="ti1.asp";
       //window.Form1.submit();
    }function SelectTotal(ObjName)
    { ObjID = GetObjID(ObjName);
      if (ObjID != -1)
      { for (i=0; i<document.Form1.elements[ObjID].length; i++)
          document.Form1.elements[ObjID].options[i].selected = true;
      }
    }        
            
    function GetObjID(ObjName)
    { for ( var ObjID=0; ObjID < window.Form1.elements.length; ObjID++ )
          if (window.Form1.elements[ObjID].name == ObjName )
          {  return(ObjID);
             break;
          }
      return(-1);
    }
    function IsSelected(ID, Value)
    { if (ID != -1 && Value != "")
      {  for (var cc=0; cc<document.Form1.elements[ID].length; cc++ )
         {   if (document.Form1.elements[ID].options[cc].value == Value)
                return true;
         }
         return false;
      }
      return false;
    }
    function HasTotal(ID)
    { if (ID != -1 )
      {  for (var cc=0; cc<document.Form1.elements[ID].length; cc++ )
         {   if ( document.Form1.elements[ID].options[cc].selected )
             {  if (document.Form1.elements[ID].options[cc].value == "0000")
                {  return true;
                }
             }
         }
         return false;
      }
      return false;
    }
    function AppendItem(ObjName, DesName)
    { ObjID    = GetObjID(ObjName);
      DesObjID = GetObjID(DesName);
      if (ObjID != -1 && DesObjID != -1)
      {  if ( IsSelected(DesObjID, "0000") )
            window.alert("已包含");
         else
         {  if ( HasTotal(ObjID) )
            {  document.Form1.elements[DesObjID].length = 0;
               document.Form1.elements[DesObjID].options[0]= new Option("---不限---", "0000");        }
            else
            {  if (document.Form1.elements[DesObjID].length == 5)
                  window.alert("最多选五项。");
               else
               {  //GET SELECTED ITEM NUMBER
                  SelNum = 0;
                  for (var j=0; j<document.Form1.elements[ObjID].length; j++)
                  {   if ( document.Form1.elements[ObjID].options[j].selected)
                      SelNum ++;
                  }
                  if ((SelNum + document.Form1.elements[DesObjID].length) > 5)
                     window.alert("最多选五项。");
                  else
                  {  //add
                     for (j=0; j<document.Form1.elements[ObjID].length; j++)
                     {   if (document.Form1.elements[ObjID].options[j].selected)
                         {  //GET VALUE
                            dd = document.Form1.elements[ObjID].options[j].value;
                            if (!IsSelected(DesObjID, dd))
                            {  //GET LENGTH
                               DesLen = document.Form1.elements[DesObjID].length;
                               // NEW OPTION
                               document.Form1.elements[DesObjID].options[DesLen]= new Option(document.Form1.elements[ObjID].options[j].text, document.Form1.elements[ObjID].options[j].value);
                            }
                            else
                               window.alert("此选项已选择。");                     }
                     }
                  }
               }
            }
         }
         //CLEAR
         for (j=0; j<document.Form1.elements[ObjID].length; j++)
              document.Form1.elements[ObjID].options[j].selected = false;
      }
    }function RemoveItem(ObjName)
    { ObjID = GetObjID(ObjName);
      if ( ObjID != -1 )
      {  var  check_index = new Array();
         for (i=window.Form1.elements[ObjID].length-1; i>=0; i--)
         {   if (window.Form1.elements[ObjID].options[i].selected)
             {  check_index[i] = true;
                window.Form1.elements[ObjID].options[i].selected = false;
             }
             else
                check_index[i] = false;
         }
         for (i=window.Form1.elements[ObjID].length-1; i>=0; i--)
         {   if (check_index[i])
                 window.Form1.elements[ObjID].options[i] = null
         }
      }
    }
    </script>
      

  2.   

    工作地点:<script language='javascript'>
    <!--
    function initprovince()
    {
    province  = new Array();
    province[0] = new Array();
    province[0][0] ='*';
    province[0][1] ='--请选择--';
    province[1] = new Array();
    province[1][0] ='北京';
    province[1][1] ='北京';
    province[2] = new Array();
    province[2][0] ='上海';
    province[2][1] ='上海';
    province[3] = new Array();
    province[3][0] ='天津';
    province[3][1] ='天津';
    province[4] = new Array();
    province[4][0] ='重庆';
    province[4][1] ='重庆';
    province[5] = new Array();
    province[5][0] ='安徽';
    province[5][1] ='安徽';
    province[6] = new Array();
    province[6][0] ='甘肃';
    province[6][1] ='甘肃';
    province[7] = new Array();
    province[7][0] ='福建';
    province[7][1] ='福建';
    province[8] = new Array();
    province[8][0] ='广东';
    province[8][1] ='广东';
    province[9] = new Array();
    province[9][0] ='广西';
    province[9][1] ='广西';
    province[10] = new Array();
    province[10][0] ='贵州';
    province[10][1] ='贵州';
    province[11] = new Array();
    province[11][0] ='海南';
    province[11][1] ='海南';
    province[12] = new Array();
    province[12][0] ='河北';
    province[12][1] ='河北';
    province[13] = new Array();
    province[13][0] ='河南';
    province[13][1] ='河南';
    province[14] = new Array();
    province[14][0] ='黑龙江';
    province[14][1] ='黑龙江';
    province[15] = new Array();
    province[15][0] ='湖北';
    province[15][1] ='湖北';
    province[16] = new Array();
    province[16][0] ='湖南';
    province[16][1] ='湖南';
    province[17] = new Array();
    province[17][0] ='吉林';
    province[17][1] ='吉林';
    province[18] = new Array();
    province[18][0] ='江苏';
    province[18][1] ='江苏';
    province[19] = new Array();
    province[19][0] ='江西';
    province[19][1] ='江西';
    province[20] = new Array();
    province[20][0] ='辽宁';
    province[20][1] ='辽宁';
    province[21] = new Array();
    province[21][0] ='内蒙古';
    province[21][1] ='内蒙古';
    province[22] = new Array();
    province[22][0] ='宁夏';
    province[22][1] ='宁夏';
    province[23] = new Array();
    province[23][0] ='青海';
    province[23][1] ='青海';
    province[24] = new Array();
    province[24][0] ='山东';
    province[24][1] ='山东';
    province[25] = new Array();
    province[25][0] ='山西';
    province[25][1] ='山西';
    province[26] = new Array();
    province[26][0] ='陕西';
    province[26][1] ='陕西';
    province[27] = new Array();
    province[27][0] ='四川';
    province[27][1] ='四川';
    province[28] = new Array();
    province[28][0] ='西藏';
    province[28][1] ='西藏';
    province[29] = new Array();
    province[29][0] ='新疆';
    province[29][1] ='新疆';
    province[30] = new Array();
    province[30][0] ='云南';
    province[30][1] ='云南';
    province[31] = new Array();
    province[31][0] ='浙江';
    province[31][1] ='浙江';
    province[32] = new Array();
    province[32][0] ='香港特别行政区';
    province[32][1] ='香港特别行政区';
    province[33] = new Array();
    province[33][0] ='澳门特别行政区';
    province[33][1] ='澳门特别行政区';
    province[34] = new Array();
    province[34][0] ='台湾';
    province[34][1] ='台湾';
    }
    function initprovinceitem(myfrm,selected)
    {  
    var i
    for(i = 0; i<=province.length-1; i++)
    {
    if (province[i][0] == selected )
    document.write('<option value=' + province[i][0] + ' selected>' +  province[i][1] + '</option>\n');
    else
    document.write('<option value=' + province[i][0] + '>' +  province[i][1] + '</option>\n');  
    }
    }
    //-->
    </script>
     
    <script language=javascript>
    <!--
    initprovince();
    //-->
    </script>
                    <select name="city2" style="width:150" size="5" multiple>
                      <script language=javascript>
    <!--
    initprovinceitem(document.form1,'');
    //-->
    </script>
                    </select>                <input onClick="JavaScript:AppendItem('city2','city')" type=button value="添加>>" name=Input>                <input onClick="JavaScript:RemoveItem('city')" type=button value="<<删除" name=Input2>                <select name="city" style="width:150" size="5" multiple>
                       
                    </select>
    </form>
      

  3.   

    2Move.htm<script>
    //用input记录所选,防止刷新,后退后数据还原.
    /* Start */
    window.onbeforeunload=function()
    {
        document.all.leftopt.value = document.all.left.outerHTML;
        document.all.rightopt.value = document.all.right.outerHTML;
    }
    window.onload=function()
    {
        if(document.all.leftopt.value!="")document.all.left.outerHTML=document.all.leftopt.value;
        if(document.all.rightopt.value!="")document.all.right.outerHTML=document.all.rightopt.value;
    }
    /* End */
    function addopt(locs,mylocs)
    {
        for(var i = 0;i<locs.options.length;i++)
        {
            var opt = locs.options[i];
            if(opt.selected)
            {
                var flag = true;
                for(var j = 0;j<mylocs.options.length;j++)
                {
                    var myopt = mylocs.options[j];
                    if(opt.value == myopt.value)
                    {
                        flag = false;
                    }
                }
                if(flag)
                {
                   locs.options[i] = null;
       i--;
                   mylocs.options[mylocs.options.length] = new Option(opt.text,opt.value,true,true)
                }
            }
        }
    }
    </script>
    <table> 
            <TR> 
            <td><b> 选择节点组 </b></td> 
            <td> 
                         <table> 
                         <tbody> 
                         <TR> 
                         <TD> 
                         <SELECT multiple name=left size=8 style="width:100"> 
                           <option value=1>1 
                           <option value=2>2 
                           <option value=3>3 
                           <option value=4>4 
                         </SELECT> 
                         </TD> 
                        <TD> 
                        <INPUT onclick=addopt(document.all.left,document.all.right) type=button value=添加> 
                        <BR><BR> 
                        <INPUT onclick=addopt(document.all.right,document.all.left) type=button value=删除> 
                        </TD> 
                        <TD> 
                        <P> 
                         <SELECT multiple name=right size=8 style="width:100"> 
                        </SELECT> 
                        </P> 
                        </TD> 
                        </TR> 
                        </TBODY> 
                        </TABLE> 
            </td> 
    </tr> 
    </table> 
    <input type=hidden name=leftopt>
    <input type=hidden name=rightopt>