| 在bs系统中,经常使用到select之间的转移,这里提供了一些通用方法,希望对大家有所帮助 : )
<SCRIPT language="javascript"> /*************************************************************************************************************** * 文 件 名:selectListTools.js * 创建时间:2004.6.23 * 创 建 人:LxcJie * 文件描述:关于list列表框的一些工具方法 * * 主要方法: * 1, moveUp(oSelect,isToTop) ------------ 向上移动一个list列表框的选中项目, * 可以支持多选移动,可以设置是否移动到顶层 * 2, moveDown(oSelect,isToBottom)---------- 向下移动一个list列表框的选中项目, * 可以支持多选移动,可以设置是否移动到底层 * 3, moveSelected(oSourceSel,oTargetSel) ------ 在两个列表框之间转移数据 * 4, moveAll(oSourceSel,oTargetSel)--------- 转移两个列表框之间的全部数据 * 5, deleteSelectItem(oSelect) ----------- 删除所选的项目 * ****************************************************************************************************************/ /** * added by LxcJie 2004.6.23 * 使选中的项目上移 * * oSelect: 源列表框 * isToTop: 是否移至选择项到顶端,其它依次下移, * true为移动到顶端,false反之,默认为false */ function moveUp(oSelect,isToTop) { //默认状态不是移动到顶端 if(isToTop == null) var isToTop = false; //假如是多选------------------------------------------------------------------ if(oSelect.multiple) { for(var selIndex=0; selIndex<oSelect.options.length; selIndex ) { //假如设置了移动到顶端标志 if(isToTop) { if(oSelect.options[selIndex].selected) { var transferIndex = selIndex; while(transferIndex > 0 && !oSelect.options[transferIndex - 1].selected) { oSelect.options[transferIndex].swapNode(oSelect.options[transferIndex - 1]); transferIndex --; } } } //没有设置移动到顶端标志 else { if(oSelect.options[selIndex].selected) { if(selIndex > 0) { if(!oSelect.options[selIndex - 1].selected) oSelect.options[selIndex].swapNode(oSelect.options[selIndex - 1]); } } } } } //假如是单选-------------------------------------------------------------------- else { var selIndex = oSelect.selectedIndex;
|
| 共4页: 上一页 1 [2] [3] [4] 下一页 |
评论加载中…