javascript列表框操作函数集合汇总

复制代码 代码如下:

  <script language="javascript">

  /* 列表框互相操作函数集 */

  //描述: 添加不重复列表框元素

  function selAdd( srcList, dstList )

  {

  var selectedIndex = new Array();

  var count = 0;

  for ( i=0; i<srcList.options.length; i++ ){

  if ( srcList.options[i].selected ){

  selectedIndex[count] = i;

  count ++;

  }

  }

  for ( j=0; j<selectedIndex.length; j++ ){

  k = selectedIndex[j];

  if ( chkDup( srcList.options[k].value, dstList )==false ){

  &, nbsp;   dstList.options.length++;

  var len = dstList.options.length-1;

  dstList.options[len].value = srcList.options[k].value;

  dstList.options[len].text = srcList.options[k].text;

  }

  }

  }

  //描述: 删除列表框元素

  function selDel( list )

  {

  var len = list.options.length;

  var idx = 0;

  while ( idx< len ){

  if ( list.options[idx].selected ){

  list.options.remove(idx);

  len = list.options.length;

  }

  else{

  idx ++;

  }

  }

  }

  //描述: 检测列表框元素重复

  function chkDup( item, list )

  {

  for ( i=0; i<list.options.length; i++ ){

  //alert( item + " - " + list.options[i].value );

  if ( item == list.options[i].value ){

  return true;

  }

  }

  return false;

  }

  //描述: 选择列表框的全部成员

  function selSel( list, item )

  {

  item.value = " ";

  for ( i=0; i<list.options.length; i++ ){

  list.options[i].selected=true;

  item.value += list.options[i].value + " ";

  }

  }

  function selSelSingle( list, value )

  {

  for ( i=0; i<list.options.length; i++ ){

  if ( list.options[i].value == value ){

  list.options[i].selected=true;

  break;

  }

  }

  }

  //描述: 根据数组初始化列表框

  function selList( item, arr )

  {

  var curIndex, insIndex, val, text;

  var arrItem = new Array();

  if ( item ){

  item.length = 0;

  curIndex = 0;

  for ( i=0; i<arr.length; i++ ){

  item.length ++;

  insIndex = item.length - 1;

  if ( arr[i] ){

  arrItem = arr[i].split( ", " );

  text = arrItem[1];

  val  = arrItem[0];

  item.options[ insIndex ].text = text;

  item.options[ insIndex ].value= val;

  }

  }

  }

  }

  </script>