📄 common.js
字号:
* 最后修改: * 修改人: */function changeOption(sel1, sel2){ var i, j, k, s2length; var b = 0; var indexarr = new Array(); if (sel1.selectedIndex != -1) { /* 判断是否有选项被选择 */ for (i=0; i<sel1.length; i++) //for(i=0,j=0;i<form.select1.length;i++) { //if(form.select1.selectedIndex==i) { if (sel1.options[i].selected) { //用上面两种方法都可以实现判断哪一个被选择了 s2length = sel2.length; var flag = true; for (k = 0; k < s2length; k++) { /* 说明下拉框sel2中的某一项的值与选项sel1中的值相等,不再重复添加 */ if (sel2.options[k].value == sel1.options[i].value) { flag = false; break; } } /*如果下拉框sel2中的某一项的值与下拉框sel1当前所选择的选项不相等,则在sel2中增加sel1中选中的选项*/ if (flag) { sel2.options[s2length] = new Option(sel1.options[i].text, sel1.options[i].value); //把已选择的索引的值保存在数组中 } indexarr[b] = i; /* 只有某个选项被选中以后,才把它的索引号保存在数组中 */ b++; } //如果选择了几个选项,则b的值为几 //form.select2.options[j]=new Option(form.select1.options[form.select1.selectedIndex].value,form.select1.options[form.select1.se //j++; //上面不能用j做为选项的索引,因为增加完选项(即函数执行完以后j就消失了,起不到保存的作用) //而select2的长度是不会消失的 //document.write(j); } //清空已增加到右边的选项 for (var c = 0; c < b; c++) { //alert("b:"+b); //alert(""+[indexarr[c]-c]+""); sel1.options[indexarr[c] - c] = null; //上面一行中必须要减去c, //假设选择了刘玉栋,许晴与苏瑾 //则indexarr[0]=0,indexarr[1]=4,indexarr[2]=5,分别为所选择元素的索引 //即第1,5,6个选项 //当点增加按钮时,首先c=0;即时indexarr[c]-c=0-0=0,即索引为0的选项被清空,即第一个选项 //由于循环是一项一项进行,当第一个选项清空以后,就只有5个选项了,此时许晴变成了第4个选项 //此时indexarr[c]-c=5-2=3,即索引为3的选项被清空,即第4个选项许晴被清空 //其它的以此类推 } } else alert("请选择要添加或删除的选项!");}/** *功能:select下拉框中的选项向上移动函数,一次只能移动一个位置,至少需要两个选项才能执行 *参数:需要进行移动的选项的全名称,如document.all.sel2或this.form.sel2(此是sel2必须在<form>...</form>中间才能够用此参数 *返回值:无 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function moveUp(form) { if (form.length <2 ) return; /* 至少需要两个选项才能执行 */ for (var i = 0; i < form.length; i++) { if (i > 0 && form.options[i].selected) { var text = form.options[i - 1].text; var value = form.options[i - 1].value; form.options[i - 1] = new Option(form.options[i].text, form.options[i].value); form.options[i] = new Option(text, value); form.options[i - 1].selected = true; /* 把移到当前位置的选项选中 */ break; } }}/** * 功能:select下拉框中的选项向下移动函数,一次只能移动一个位置,至少需要两个选项才能执行 * 调用示例:onclick="moveDown(this.form.leftid)";无eval时参数不要用引号引起来,且form参数可以用简称 * 参数:需要进行移动的选项的全名称,如document.all.sel2或this.form.sel2(此时sel2必须在<form>...</form>中间才能够用此参数 * 返回值:无 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function moveDown(form) { if (form.length < 2) return; /* 至少需要两个选项才能执行 */ for (var i = 0; i < form.length; i++) { if (i < form.length - 1 && form.options[i].selected) { //alert("i:" + i); var text = form.options[i + 1].text; var value = form.options[i + 1].value; form.options[i + 1] = new Option(form.options[i].text, form.options[i].value); form.options[i] = new Option(text, value); form.options[i + 1].selected = true; /* 把移到当前位置的选项选中 */ break; /* 此处必须用break中止循环,否则会一直向下移动到最后一项 */ } }}/** * 功能:得到某一下拉框中各个选项的值,并用","号把它们连接起来,并把它们保存在一个隐藏框,供提交时使用 调用selectAll('document.frmcustom', 'rightid', 'hdnrightid'); 有eval时一般需要把参数用引号引起来,且form参数不能用简称 * 参数:表单的名称:下拉框的名称 :sel:下拉框的名称 :hdn:隐藏框的名称 * 返回值:得到各选项的值 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function selectAll(form, sel, hdn) { var whichSel; var tempID = ""; var temp; whichSel = eval(form + "." + sel); for (var i = 0; i < whichSel.length; i++){ if (whichSel.options[i] != -1) { whichSel.options[i].selected = true; tempID += (tempID == "") ? whichSel.options[i].value : "," + whichSel.options[i].value; } //alert("test"); } var temp = eval(form + "." + hdn); temp.value = tempID tempID = ""; //alert(tempID);}/** * 功能:得到同名或非同名(非同名时名称一般需要有一定的规律, 如module1,module2,module3等,这样好进行判断) 调用示例:getCheckValue('document.form1', 'menu', 'savemenuid'); 有eval时一般需要把参数用引号引起来,且form参数不能用简称 * 复选框的值,并用","号把它们连接起来,并把它们保存在一个隐藏框,供提交时使用 * 参数:表单的名称:下拉框的名称 :chk:选择框的名称 :hdn:隐藏框的名称 * 返回值:得到所选择的选择框的值 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function getCheckValue(form, chk, hdn) { var tempID = ""; var temp; var element = eval(form + ".elements"); for (var i=0; i < element.length; i++) { var e = element[i]; if (e.checked && e.type.toLowerCase() == "checkbox" && e.name.indexOf(chk) != -1) { tempID += (tempID == "") ? e.value : "," + e.value; } } var temp = eval(form + "." + hdn); temp.value = tempID}/** * 功能:全选指定名称的复选框,调用示例为onclick="checkAll('document.form1', 'menu', 'chkmenu')" 调用示例:onclick="checkAll('document.form1', 'menu', 'chkmenu')"; 有eval时一般需要把参数用引号引起来,且form参数不能用简称 * 参数:form:表单的名称 :chk:选择框的名称 :obj:执行全选操作的对象 * 返回值:无 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function checkAll(form, chk, obj){ var element = eval(form + ".elements"); for (var i=0; i < element.length; i++) { var e = element[i]; if (e.name != obj && e.type.toLowerCase() == "checkbox" && e.name.indexOf(chk) != -1) { var temp = eval(form + "." + obj) e.checked = temp.checked; } }}/** * 功能:设置某一个表单中hidden型的字段的值为指定的值,按照某一列进行排序(升序或降序) 调用示例:setOrder('document.frmorder', 'field', 'Stat_Datetime', 'method'); 有eval时一般需要把参数用引号引起来,且form参数不能用简称 * 复选框的值,并用","号把它们连接起来,并把它们保存在一个隐藏框,供提交时使用 * 参数: 参数field1一般是要进行排序的字段的hidden表单的名称如field,value1为它的值,如Stat_Datetime 参数field2一般是对指定字段的排序方法的hidden表单的名称,如method * 返回值:得到所选择的选择框的值 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function setOrder(form, field1, value1, field2) { /*alert("test");*/ var obj1; var obj2; var obj1 = eval(form + "." + field1); var obj2 = eval(form + "." + field2); obj1.value = value1; if (obj2.value == "DESC") { obj2.value = "ASC"; } else { obj2.value = "DESC"; } var objFrm = eval(form); objFrm.submit(); /* 提交表单 */ /*document.frmorder.submit(); alert("test2");*/}/** * 功能:根据文件路径得到文件名 * 参数:文件全路径如d:\mysite\1.jpg * 返回值:得到"\"后的文件名,如1.jpg * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function getFileName(fullPath){ var temp; if (fullPath == "" || fullPath == null) return ""; if (fullPath != ""){ var temp = fullPath.substring(fullPath.lastIndexOf("\\") + 1) //alert("temp:" + temp); return temp; } else return "";}/** * 功能:选择文件函数 * 参数:form(需要得到值的表单名称), onclick="selectFile('document.frmmodule.menuurl.value')" * 返回值:无 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function selectFile(form) { var newWin; newWin = window.open("about:blank", "winFile", "toolbar = 0, menubar=0, width = 300, height = 150"); with (newWin.document) { writeln("<html>"); writeln("<head>"); writeln("<title>选择文件</title>"); writeln("<link rel=\"stylesheet\" href=\"module.asp\" type=\"text/css\">"); writeln("</head>"); writeln("<body>"); writeln("<form>"); writeln("<input type = \"file\" name=\"file\">"); writeln("<br><br>"); writeln("<input type = \"button\" name = \"btnsel\" value = \"确定\" onclick = \"opener." + form + "= opener.getFileName(this.form.file.value);window.close();\" class = \"btn\">"); writeln("<input type = \"button\" name = \"btncancel\" value = \"取消\" onclick=\"window.close()\" class = \"btn\">"); writeln("</form>"); writeln("</body>"); writeln("</html>"); } //alert(form); return;}/** * 功能:设置内容的可见与不可见 * 参数:itemID(HTML元素的id值), onclick="selectFile('document.frmmodule.menuurl.value')" * 返回值:无 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function setDisplay(itemId){ //display=="none"表示不显示,=""表示显示 if(itemId.style.display == "none") { itemId.style.display = ""; } else { itemId.style.display = "none"; }}/** * 功能:字体放大与缩小 * 参数:字体大小的值,如12, 14, 16 * 返回值:无 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function doZoom(size){ document.getElementById('zoom').style.fontSize = size + 'px';} /** * 功能:实现文章及其它内容的打印 * 参数:无 * 返回值:无 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function doPrint(){ var str = "<html>"; var article; var strFontSize = '【<A href="javascript:doZoom(16)">大</A> <A href="javascript:doZoom(14)">中</A> <A href="javascript:doZoom(12)">小</A>】' var strdoPrint = "doPrint()"; //var bgColor = document.bgColor; /* use fix white color */ var bgColor = "#FFFFFF"; var css; css="<style>" +"body{font-family:宋体}" +"td,.f12{font-size:14.8px}" +".f24 {font-size:24px;}" +".f14 {font-size:14px;}" +".title14 {font-size:14px;line-height:130%}" +".l17 {line-height:170%;}" +"</style>"; str += css; str += '<meta http-equiv="content-type" content="text/html; charset=gb2312">'; str += '<title>' + document.title + '</title>'; str += "<body topmargin=5 leftmargin=5 marginheight=5 marginwidth=5 onLoad='window.print()' bgcolor='" + bgColor + "'>"; str += "<center><table width=760 border=0 cellspacing=0 cellpadding=0><tr><td height=34 align=center><a href='javascript:history.back()'>返回</a> <a href='javascript:window.print()'>打印</a></td></tr></table>"; str += "<table width=760 border=0 cellpadding=0 cellspacing=20><tr><td class='font14'>"; article = document.getElementById('article').innerHTML; str += article; str += "<div align=center>" + window.location.href + "</div>"; str += "</td></tr></table></center>"; str += "</body></html>"; document.write(str); document.close();} /** * 功能:用cookie实现颜色方案 * 参数:无 * 返回值:无 * 建立日期:2004-6-1 * 作者:蔡华锋 * 最后修改: * 修改人: */function RCk(name,dclr){ var arg=name+"=" var ck=document.cookie if (ck.indexOf(arg)!=-1){ var vstr=ck.indexOf(arg)+arg.length if (ck.indexOf(";",vstr)==-1) var vend=ck.length else var vend=ck.indexOf(";",vstr) return ck.substring(vstr,vend) }else return dclr}/** * 功能:得到地址栏目url地址后的文件名 * 如输入http://192.168.10.26:1234/for-online/html/200407/200407221710363.html * 则函数的返回值为200407221710363.html,即使文件后面带上参数,则返回值也不含有 * 参数 * 参数:无 * 返回值:文件名 * 建立日期:2004-8-4 * 作者:蔡华锋 * 最后修改: * 修改人: */function getFilename(){ var filename = ""; var url = ""; var search = ""; var pos1 = 0; var pos2 = 0; url = document.URL; var search = document.location.search; /* in url have not \ */ if (url.indexOf("\\") == -1) { pos1 = url.lastIndexOf("/"); } else { pos1 = url.lastIndexOf("\\"); } /* in url have not ? */ if (url.indexOf("?") == -1) { pos2 = url.length; } else { pos2 = url.lastIndexOf("?"); } filename = url.substring(pos1 + 1, pos2); return filename;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -