改变select元素原来的事件属性,并加快捷键

xiaoxiao2022-12-01  94

<select name="commonNativeLanguage" style="width:150px"        οnkeydοwn="selectEvent('commonNativeLanguage')"        onChange="connectTextLangueCommonNative()"         onmousewheel="return false;">

select 元素的onmousewheel事件即滚轮转时的事件会改变当前选项,并触发onChange事件,通过onmousewheel="return false;" 来屏蔽此事件.

 

onkeydown是给select 元素加快捷键,上、下键改变当前的选项,按回车将select的值插入一文本域,代码如下。

//select 上键:选择上一下元素,但不触发onchange事件 function selectEvent(elementname){ if(event.keyCode==38 ||event.keyCode==40){ event.returnValue=false; var selectObj=document.indexform[elementname]; var currentIndex=selectObj.selectedIndex; //如果是上键 if(event.keyCode==38 ){ //alert("上键--"+currentIndex); if(currentIndex==0){ return false; }else{ selectObj.options[currentIndex-1].selected=true; return; } } //如果是下键 if(event.keyCode==40 ){ //alert("下键--"+currentIndex+"selectObj.options.length:"+selectObj.options.length); if(currentIndex==selectObj.options.length-1){ return false; }else{ selectObj.options[currentIndex+1].selected=true; return ; } } } //如果是空格键,则把选中的内容添加文本域中 if(event.keyCode==32){ var objName=event.srcElement.name; if(objName=='commonForeignLanguage'){ connectTextLangueCommonForeign(); } } }

 

转载请注明原文地址: https://www.6miu.com/read-4979207.html

最新回复(0)