<select><option></option></select> 操作
转载请注明来源:https://www.cnblogs.com/hookjc/
function FlySwapSelect(s1,s2,myvars,calldbclick)
{
var mSel1=s1;
var mSel2=s2;
var mThis=this;
var mVars=myvars.split('|');
var mCallDbClick=calldbclick;
mSel1.attachEvent('ondblclick',function(){mThis.SwapOptions(mSel1,mSel2);});
mSel2.attachEvent('ondblclick',function(){mThis.SwapOptions(mSel2,mSel1);});
//双击事件的处理
this.SwapOptions=function(from,to)
{
if(from.selectedIndex<0) return;
var op1=from.options[from.selectedIndex];
//如果为空
if(op1.innerHTML=='') return;
var op2=new Option(op1.text,op1.value);
var len=to.options.length;
to.options[len]=op2;
for(var i=0;i<mVars.length;i++)
to.options[len].setAttribute(mVars[i],op1.getAttribute(mVars[i]));
from.options[from.selectedIndex]=null;
if(mCallDbClick!='')eval(mCallDbClick+'();');
}
this.GetSum=function(obj,str)
{
var ret=new Array();
arr=str.split("|");
for(var n=0;n<arr.length;n++)
ret[n]=0;
for(i=0;i<obj.options.length;i++)
{
for(var n=0;n<arr.length;n++)
ret[n]+=obj.options[i].getAttribute(arr[n])*1;
}
return ret;
}
//根据查询条件筛选
this.Query=function(sel,where)
{
for(i=0;i<sel.options.length;i++)
{
t=sel.options[i];
var ret=eval(where);
if(ret)
{
if(sel.options[i].innerHTML=='')
sel.options[i].innerHTML=sel.options[i].oldtxt;
}else
{
if(sel.options[i].innerHTML!='')
{
sel.options[i].oldtxt=sel.options[i].innerHTML;
sel.options[i].innerHTML='';
}
}
}
this.Sort(sel);
}
排序:
this.Sort=function(obj)
{
var arr = new Array();
var len=obj.options.length;
for(var i=0; i<len; i++)
{
var attrs = new Array();
for(var n=0;n<mVars.length;n++)
attrs[n]=obj.options[i].getAttribute(mVars[n]);
attrs[n]=obj.options[i].getAttribute('oldtxt');
arr[i]={text:obj.options[i].innerHTML,html:obj.options[i].value,attr:attrs};
}
arr.sort(this.SortFun);
for(var i=0; i<len; i++)
{
obj.options[i].innerHTML=arr[i].text;
obj.options[i].value=arr[i].value;
for(var n=0;n<mVars.length;n++)
obj.options[i].setAttribute(mVars[n],arr[i].attr[n]);
obj.options[i].oldtxt=arr[i].attr[n];
}
}
this.SortFun=function(x,y){if(x.text>y.text) return -1; else if(x.text<y.text) return 1;else return 0;}
this.GetData=function(obj)
{
ret='';
for(i=0;i<obj.options.length;i++)
ret+=','+obj.options[i].value;
return ret.substr(1);
}
}
来源:python脚本自动迁移
<select><option></option></select> 操作的更多相关文章
- 让 select 的 option 标签支持事件监听(如复制操作)
这标题,让option支持事件监听,应该不难的呀,有什么好讲的? 其实还是有的,默认在浏览器代码是无法直接对option标签进行操作的,不仅包括JS事件监听,还是CSS样式设置 查了一些资料,姑且认为 ...
- js 操作select和option
js 操作select和option 1.动态创建select function createSelect(){ var mySelect = document.createElement_x(&qu ...
- jQuery获取Radio选择的Value值||两个select之间option的互相添加操作(jquery实现)
jQuery获取Radio选择的Value值: 1. $("input[name='radio_name'][checked]").val(); //选择被选中Radio的Val ...
- jquery操作select下拉框的各种方法,获取选中项的值或文本,根据指定的值或文本选中select的option项等
简介jquery里对select进行各种操作的方法,如联动.取值.根据值或文本来选中指定的select下拉框指定的option选项,读取select选中项的值和文本等. 这一章,站长总结一下jquer ...
- vue操作select获取option值
如何实时的获取你选中的值 只用@change件事 @change="changeProduct($event)" 动态传递参数 vue操作select获取option的ID值 如果 ...
- js 操作select和option常见用法
1.获取选中select的value和text,html <select id="mySelect"> <option value="1"&g ...
- jquery的select元素和option的相关操作
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- javaScript的select元素和option的相关操作
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- select标签的相关操作,选中,获取option的值,二级联动
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- AngularJS下拉列表select在option动态变化之后多出了一个错误项的问题
场景: Select初始化之后,选中select的某个选项 通过AngularJS更新select的选项 错误写法: HTML(使用ng-repeat) <div ng-app="Te ...
随机推荐
- AUGMIX : A SIMPLE DATA PROCESSING METHOD TO IMPROVE ROBUSTNESS AND UNCERTAINTY
目录 概 主要内容 实验的指标 Dan Hendrycks, Norman Mu,, et. al, AUGMIX : A SIMPLE DATA PROCESSING METHOD TO IMPRO ...
- Dimension reduction in principal component analysis for trees
目录 问题 重要的定义 距离 支撑树 交树 序 tree-line path 重要的性质 其它 Alfaro C A, Aydin B, Valencia C E, et al. Dimension ...
- linux系统安装java
1.下载Java压缩包 *.gz 2.解压 3.修改Linux配置文件,配置Java环境变量 4.使用命令source /etc/profile让修改生效 转载 https://www.cnblogs ...
- G2022 次列车即将进站,前端人请抓紧时间上车
前端发展百花放,一技未熟百技出.未知何处去下手,关注小编胜百书. 我是前端人,关注小编,分享更多前端相关知识! 平安夜一个人?圣诞一个人? 跨年还是一个人吗? 没事,关注小编,每个节日让小编陪你一起度 ...
- 编写Java程序,跑道长 50m,模拟 3 名学生同时在跑道跑步的场景 3名同学相当于3个线程对象
查看本章节 查看作业目录 需求说明: 跑道长 50m,模拟 3 名学生同时在跑道跑步的场景 3名同学相当于3个线程对象 实现思路: 创建 Java 项目,在项目中创建StudentRunning类,该 ...
- Zookeeper集群安装(开启kerberos)
安装规划 zookeeper集群模式,安装到如下三台机器 10.43.159.237 zdh-237 10.43.159.238 zdh-238 10.43.159.239 zdh-239 Kerbe ...
- Android8 以上使用 UIautomator Viewer提示Unexpected error while obtaining UI hierarchy报错(方法二)
一:最常见的一个问题就是:Android8及以上的系统无法获取到页面,提示报下面的错误 二:解决办法 1.下载新的tools,在下面链接里找到SDK tools下载 http://www.androi ...
- C# 使用vs2017 创建类 时 注意点
1.创建新类后,在其他类无法new 这个新创建的类 ,怎么回事? 原因很简单,创建类时不带修饰符,默认是被保护的类 上图为创建类后的默认代码 ,没有修饰符 ,在其他类中无法引入改类的命名空间,会显示找 ...
- spring security 动态 修改当前登录用户的 权限
1.前言 spring security 可以获取当前登录的用户信息,同时提供了接口 来修改权限列表信息 , 使用这个方法 ,可以动态的修改当前登录用户权限. 那么问题来了... 如果我是管理员 ,如 ...
- JS 判断上传文件类型
var video_src_file = $("#video_src_file").val(); var fileTypes = new Array("flv" ...