js select多选列表传值代码

   [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

  js核心代码

  

复制代码 代码如下:

  /*移除左边选中的列表项到右边*/

  function fMoveSelectedOptionsLeftToRight(oLeft,oRight)

  {

  if(!(oLeft&&oRight))

  {

  return;

  }

  if(!hasOptions(oLeft))

  {

  return;

  }

  if(oLeft.selectedIndex==-1)

  {

  oLeft.selectedIndex=0;

  }

  for(var i=0;i<oLeft.options.length;i++)

  {

  if(oLeft.options[i].selected)

  {

  var oOption = document.createElement("OPTION");

  oOption.setAttribute("text",oLeft.options[i].text);

  oOption.setAttribute("value",oLeft.options[i].value);

  oRight.add(oOption);

  }

  }

  clearSelectedOptions(oLeft);

  }

  /*移除左边的所有列表项到右边*/

  function fMoveAllOptionsLeftToRight(oLeft,oRight)

  {

  if(!(oLeft&&oRight))

  {

  return;

  }

  if(!hasOptions(oLeft))

  {

  return;

  }

  for(var i=0;i<oLeft.options.length;i++)

  {

  var oOption = document.createElement("OPTION");

  oOption.setAttribute("text",oLeft.options[i].text);

  oOption.setAttribute("value",oLeft.options[i].value);

  oRight.add(oOption);

  }

  clearAllOptions(oLeft);

  }

  /*移除右边选中的列表项到左边*/

  function fMoveSelectedOptionsRightToLeft(oLeft,oRight)

  {

  if(!(oLeft&&oRight))

  {

  return;

  }

  if(!hasOptions(oRight))

  {

  return;

  }

  if(oRight.selectedIndex==-1)

  {

  oRight.selectedIndex=0;

  }

  for(var i=0;i<oRight.options.length;i++)

  {

  if(oRight.options[i].selected)

  {

  var oOption = document.createElement("OPTION");

  oOption.setAttribute("text",oRight.options[i].text);

  oOption.setAttribute("value",oRight.options[i].value);

  oLeft.add(oOption);

  }

  }

  clearSelectedOptions(oRight);

  }

  /*移除右边的所有列表项到左边*/

  function fMoveAllOptionsRightToLeft(oLeft,oRight)

  {

  if(!(oLeft&&oRight))

  {

  return;

  }

  if(!hasOptions(oRight))

  {

  return;

  }

  for(var i=0;i<oRight.options.length;i++)

  {

  var oOption = document.createElement("OPTION");

  oOption.setAttribute("text",oRight.options[i].text);

  oOption.setAttribute("value",oRight.options[i].value);

  oLeft.add(oOption);

  }

  clearAllOptions(oRight);

  }

  /*清空select所有options*/

  function clearAllOptions(oSelect)

  {

  if(oSelect)

  {

  var ops=oSelect.options;

  while(ops.length>0)

  {

  oSelect.remove(ops.length-1);

  }

  }

  }

  /*清空select所有选中的options*/

  function clearSelectedOptions(oSelect)

  {

  if(oSelect)

  {

  for(var i=0;i<oSelect.options.length;i++)

  {

  if(oSelect.options[i].selected)

  {

  oSelect.remove(i--);

  }

  }

  }

  }

  /*判断select是否有options*/

  function hasOptions(oSelect)

  {

  if(oSelect)

  {

  return oSelect.options.length>0;

  }

  return false;

  }