可编辑下拉框

<html> <head> <meta name="GENERATOR" content="Microsoft FrontPage 5.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>可编辑下拉框</title> </head> <body> <table style="border:2px outset;background-color:#d2e8FF" width="250" height="100" align="center"> <tr> <td width="60%" height="30" align="center"> <select name="fason"> <option value="可编辑下拉框">可编辑下拉框</option> <option value="作者">作者</option> </select> </td> </tr> </table> <script language="javascript"> function combox(obj,select){ this.obj=obj this.name=select; this.select=document.getElementsByName(select)[0]; /*要转换的下拉框*/ } /*初始化对象*/ combox.prototype.init=function(){ var inputbox="<input name='combox_"+this.name+"' οnchange='"+this.obj+".find()' " inputbox+="style='position:absolute;width:"+(this.select.offsetWidth-16)+";height:"+this.select.offsetHeight+";left:"+getL(this.select)+";top:"+getT(this.select)+"'>" document.write(inputbox) with(this.select.style){ left=getL(this.select) top=getT(this.select) position="absolute" clip="rect(0 "+(this.select.offsetWidth)+" "+this.select.offsetHeight+" "+(this.select.offsetWidth-18)+")" /*切割下拉框*/ } this.select.οnchange=new Function(this.obj+".change()") this.change() } /*初始化结束*/ 对象事件定义/// combox.prototype.find=function(){ /*当搜索到输入框的值时,下拉框自动定位*/ var inputbox=document.getElementsByName("combox_"+this.name)[0] with(this.select){ for(i=0;i<options.length;i++) if(options[i].text.indexOf(inputbox.value)==0){ selectedIndex=i this.change(); break; } } } combox.prototype.change=function(){ /*定义下拉框的onchange事件*/ var inputbox=document.getElementsByName("combox_"+this.name)[0] inputbox.value=this.select.options[this.select.selectedIndex].text; with(inputbox){select();focus()}; } 对象事件结束/// /*公用定位函数(获取控件绝对坐标)*/ function getL(e){ var l=e.offsetLeft; while(e=e.offsetParent)l+=e.offsetLeft; return l } function getT(e){ var t=e.offsetTop; while(e=e.offsetParent)t+=e.offsetTop; return t } /*结束*/ </script> <script language="javascript"> var a=new combox("a","fason") a.init() </script> </body> </html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值