iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > html >如何使用JavaScript实现select所支持的功能
  • 503
分享到

如何使用JavaScript实现select所支持的功能

2024-04-02 19:04:59 503人浏览 八月长安
摘要

小编给大家分享一下如何使用javascript实现select所支持的功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧

小编给大家分享一下如何使用javascript实现select所支持的功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

在进行JavaScript实现select所支持的功能实现时,首先需要了解一些标识的定义,比如true-这个是控制单击时出现下拉框体的标识等等。

调用时可以这样:

1,tempStr=GetNewSelectStr(dataTable.value,"select"+rowIndex,true);

2,makeSelectBox("select"+rowIndex,tempStr,value,obj);

tempStr-这个是返回的下拉列表值的框体

dataTable.value-这个是数据源(我这里是一张表)

"select"+rowIndex-这个是ID号,也就是当前这个select的id号(我这里是有多个select所以ID号是自动的)

true-这个是控制单击时出现下拉框体的标识

value-这个是初始的时候显示在select输入框中的值

obj-这个是要显示select的对象

JavaScript实现select源代码:

var nowOpenedSelectBox = "";   var mousePosition = "";   var userList=null;   function selectThisValue(thisId,thisIndex,thisValue,thisString) {   var objId = thisId;   var nowIndex = thisIndex;   var valueString = thisString;   var sourceObj = $(objId);   var nowSelectedValue = document.getElementById(nowIndex+thisId).innerhtml;   hideOptionLayer(objId);   if (sourceObj) sourceObj.value = nowSelectedValue;   settingValue(objId,valueString);   selectBoxFocus(objId);   if (sourceObj.onchange) sourceObj.onchange();   }   function settingValue(thisId,thisString) {   var objId = thisId;   var valueString = thisString;   var selectedArea = document.getElementById(objId+"selectBoxSelectedValue");   if (selectedArea) {   if(navigator.appName.indexOf("Explorer") > -1){   selectedArea.innerText = valueString;   }   else{   selectedArea.textContent = valueString;   }   }   }   var l=0;   //显示下拉框中的值   function viewOptionLayer(thisId,Istask,flag) {   var objId = thisId;   var selectInfo="";   var optionHeight = 18; // 高   var optionMaxNum = 7; //   var optionInnerLayerHeight = "";   var selectBoxWidth =130;   var selectBoxHeight =17;   l=userList.Rows.length;   var optionLayer = document.getElementById(objId+"selectBoxs");   if(optionLayer.innerHTML=="")   {   if (l > optionMaxNum) optionInnerLayerHeight = "height:"+ (optionHeight * optionMaxNum) + "px";   selectInfo = "";   if(Istask=="true")   {   selectInfo += " ";   selectInfo += " ";   selectInfo += "    ";   selectInfo += " ";   selectInfo += " ";   selectInfo += "    ";   }   else   {   selectInfo += " ";   selectInfo += " ";   selectInfo += "    ";   }   selectInfo += " ";   selectInfo += " ";   selectInfo += "    ";   selectInfo += " ";   for (var i=0 ; i < l ; i++)   {   var nowValue = userList.Rows[i][userList.Columns[0].Name];   var nowText = userList.Rows[i][userList.Columns[0].Name];   if(Istask=="true")   {   selectInfo += " ";   }   else   {   selectInfo += "    ";   }   selectInfo += " " + nowText + "";   // selectInfo += " ";   selectInfo += "    ";   }   selectInfo += " ";   selectInfo += "    ";   selectInfo += " ";   selectInfo += "    ";   selectInfo +=   "";   optionLayer.innerHTML=selectInfo;   }   if (flag && optionLayer.style.display=="none"){ optionLayer.style.display = "";optionLayer.focus();}   else   {   optionLayer.style.display = "none";   if(document.getElementById("level"))   {   document.getElementById("level").style.display="";   }   if(document.getElementById("priority"))   {   document.getElementById("priority").style.display="";   }   }   if(!flag){optionLayer.style.display = "";optionLayer.focus();}   for(var i=0;i    {   if(document.getElementById("select"+i+""+"viewOptions"))   {   document.getElementById("select"+i+""+"viewOptions").style.display="none";   }   }   document.getElementById(objId+"viewOptions").style.display="";   if(document.getElementById("level"))   {   document.getElementById("level").style.display="none";   }   if(document.getElementById("priority"))   {   document.getElementById("priority").style.display="none";   }   nowOpenedSelectBox = objId;   setMousePosition("inBox");   }   //支持首字母筛选、回车键取值、上下键选值功能   function firstLetter(thisId){   var count=0;   var selectedVal="";   if(document.getElementById(thisId+"viewOptions").style.display=="")   {   document.getElementById(thisId+"viewOptions").focus();   var asciiCode=String.fromCharCode(event.keyCode).toLowerCase();   var selectValue="";   if(event.keyCode==38)   {   for(var i=0;i    {   if(document.getElementById(i+thisId).className=="selectBoxOptionOver" && i>0)   {   document.getElementById(i+thisId).style.backgroundColor='#ffffff';   document.getElementById(i+thisId).style.color='#253449';   document.getElementById(i+thisId).className='selectBoxOption';   document.getElementById((i-1)+thisId).style.backgroundColor='#2c59aa';   document.getElementById((i-1)+thisId).style.color='#ffffff';   document.getElementById((i-1)+thisId).className='selectBoxOptionOver';   document.getElementById(thisId+"viewOptions").scrollTop= (i-1)*20;   count=1;   break;   }   }   if(count==0)   {   document.getElementById((l-1)+thisId).style.backgroundColor='#2c59aa';   document.getElementById((l-1)+thisId).style.color='#ffffff';   document.getElementById((l-1)+thisId).className='selectBoxOptionOver';   }   }   if(event.keyCode==40)   {   for(var i=0;i    {   if(document.getElementById(i+thisId).className=="selectBoxOptionOver" && i    {   document.getElementById(i+thisId).style.backgroundColor='#ffffff';   document.getElementById(i+thisId).style.color='#253449';   document.getElementById(i+thisId).className='selectBoxOption';   document.getElementById((i+1)+thisId).style.backgroundColor='#2c59aa';   document.getElementById((i+1)+thisId).style.color='#ffffff';   document.getElementById((i+1)+thisId).className='selectBoxOptionOver';   if(i>10)   {   document.getElementById(thisId+"viewOptions").scrollTop= (i+1)*19;   }   else   {   document.getElementById(thisId+"viewOptions").scrollTop= (i+1)*10;   }   count=1;   break;   }   }   &nb   sp; if(count==0)   {   document.getElementById(0+thisId).style.backgroundColor='#2c59aa';   document.getElementById(0+thisId).style.color='#ffffff';   document.getElementById(0+thisId).className='selectBoxOptionOver';   }   }   if(event.keyCode==13)   {   for(var i=0;i    {   if(document.getElementById(i+thisId).className=="selectBoxOptionOver")   {   selectedVal=document.getElementById(i+thisId).innerHTML;   var sourceObj = $(thisId);   hideOptionLayer(thisId);   if (sourceObj) sourceObj.value = selectedVal;   settingValue(thisId,selectedVal);   selectBoxFocus(thisId);   if (sourceObj.onchange) sourceObj.onchange();   document.getElementById(thisId+"viewOptions").style.display="none";   if(document.getElementById("level"))   {   document.getElementById("level").style.display="";   }   if(document.getElementById("priority"))   {   document.getElementById("priority").style.display="";   }   break;   }   }   }   for(var i=0 ; i < l ; i++)   {   selectValue=document.getElementById(i+thisId).innerHTML;   if(asciiCode==selectValue.substring(0,1))   {   resetStyle(thisId);   document.getElementById(i+thisId).style.backgroundColor='#2c59aa';   document.getElementById(i+thisId).style.color='#ffffff';   document.getElementById(i+thisId).className='selectBoxOptionOver';   document.getElementById(thisId+"viewOptions").scrollTop= i*19;   break;   }   }   }   }   //清除被选中的下拉列表值的样式   function resetStyle(thisId){   for(var i=0;i    {   document.getElementById(i+thisId).style.backgroundColor='#ffffff';   document.getElementById(i+thisId).style.color='#253449';   document.getElementById(i+thisId).className='selectBoxOption';   }   }   //隐藏下拉框   function hideOptionLayer(thisId) {   var objId = thisId;   var optionLayer = document.getElementById(objId+"selectBoxs");   if (optionLayer) optionLayer.style.display = "none";   if(document.getElementById("level"))   {   document.getElementById("level").style.display="";   }   if(document.getElementById("priority"))   {   document.getElementById("priority").style.display="";   }   }   function setMousePosition(thisValue) {   var positionValue = thisValue;   mousePosition = positionValue;   }   function clickMouse() {   if (mousePosition == "out") hideOptionLayer(nowOpenedSelectBox);   }   function selectBoxFocus(thisId) {   var objId = thisId;   var obj = document.getElementById(objId + "selectBoxSelectedValue");   obj.className = "selectBoxSelectedAreaFocus";   obj.focus();   }   function selectBoxBlur(thisId) {   var objId = thisId;   var obj = document.getElementById(objId + "selectBoxSelectedValue");   obj.className = "selectBoxSelectedArea";   }   function hiddenOptions(thisId){   document.getElementById(thisId+"viewOptions").style.display="none";   if(document.getElementById("level"))   {   document.getElementById("level").style.display="";   }   if(document.getElementById("priority"))   {   document.getElementById("priority").style.display="";   }   }   function makeSelectBox(index,newSelect,value,obj) {   newSelect=newSelect.replace(/(select0)/g,index);   $(obj).html(newSelect);   settingValue(index,value);   }   function GetNewSelectStr(table,index,IsTask){   userList=table;   var downArrowSrc = "../images/sanjiao.gif"; //三角   var downArrowSrcWidth = 16; //宽   var selectBoxWidth =130;   var selectBoxHeight =17;   newSelect="   "   ; newSelect += "";   newSelect += " ";   newSelect += " ";   newSelect += " ";   if(IsTask)   {   newSelect += " ";   newSelect += " ";   }   else   {   newSelect += "    ";   newSelect += " ";   }   newSelect += " ";   newSelect += "    ";   newSelect += " ";   newSelect += " ";   newSelect += "    ";   newSelect += "";   return newSelect ;   }

以上是“如何使用JavaScript实现select所支持的功能”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网html频道!

--结束END--

本文标题: 如何使用JavaScript实现select所支持的功能

本文链接: https://www.lsjlt.com/news/79752.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用JavaScript实现select所支持的功能
    小编给大家分享一下如何使用JavaScript实现select所支持的功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧...
    99+
    2024-04-02
  • 如何在MongoDB中实现数据的多语言支持功能
    如何在MongoDB中实现数据的多语言支持功能摘要:随着全球化的发展,越来越多的应用程序需要支持多语言功能。本文将介绍如何在MongoDB中实现数据的多语言支持功能,包括数据结构设计、数据存储和数据查询等方面。同时,为了更好地理解和实操本文...
    99+
    2023-10-22
    MongoDB 多语言支持
  • 使用MySQL实现select into临时表的功能
    目录MySQL select into临时表select into 临时表create 临时表mysql临时表(可以将查询结果存在临时表中)创建临时表可以将查询结果寄存my...
    99+
    2024-04-02
  • uniapp如何实现支付宝支付的功能
    随着移动互联网的飞速发展,人们越来越依赖于手机支付。而支付宝是其中使用最广泛的支付方式之一。在移动应用中,如果要进行支付宝支付的功能开发,那么使用uniapp框架就是一个非常好的选择。本文将介绍uniapp如何实现支付宝支付的功能。一、准备...
    99+
    2023-05-14
  • php如何实现支付功能
    要实现支付功能,可以使用支付宝、微信支付等第三方支付平台提供的接口。具体步骤如下:1. 注册并获取支付平台的商户号、密钥等必要信息。...
    99+
    2023-10-09
    php
  • Vue如何实现支付宝支付功能
    这篇文章主要介绍了Vue如何实现支付宝支付功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。先给大家上个效果图: <div&...
    99+
    2024-04-02
  • 如何使用JavaScript实现滑块验证功能
    这篇文章将为大家详细讲解有关如何使用JavaScript实现滑块验证功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体内容如下<!DOCTYPE html><html&nb...
    99+
    2023-06-26
  • 如何使用JavaScript实现公用导航条功能
    JavaScript是一种广泛应用于网页前端开发的脚本语言,其强大的功能与灵活性为开发者带来了无限的可能性。其中,公用导航条是常见的网页设计元素,可以提升用户体验,方便用户在不同页面之间进行导航。在本文中,我们将介绍如何使用JavaScri...
    99+
    2023-05-14
  • win8支持多屏幕的功能如何设置才可以使用
    在win8新系统中有一个支持多屏幕的功能,但是这个功能并不像其它系统只要插上就可以使用的,需要进行相关的设置才能达到多屏幕的使用效果,有兴趣的用户可以来学习学习一下。 首先右击桌面选择“屏幕分辨率&rdquo...
    99+
    2023-06-05
    win8 多屏幕 屏幕 功能
  • 如何使用vbs实现支持断点下载
    这篇文章主要介绍了如何使用vbs实现支持断点下载,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。并附上VBS代码的解析,不懂的朋友可以配合微软的SCRIPT56.CHM文档自学...
    99+
    2023-06-08
  • 怎么使用elementui的select实现多选添加功能
    今天小编给大家分享一下怎么使用elementui的select实现多选添加功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。...
    99+
    2023-07-05
  • JS中如何实现Select下拉框支持输入模糊查询
    这篇文章主要为大家展示了“JS中如何实现Select下拉框支持输入模糊查询”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JS中如何实现Select下拉框支持输入...
    99+
    2024-04-02
  • 微信小程序如何使用PHP实现支付功能
    小编给大家分享一下微信小程序如何使用PHP实现支付功能,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!本文实例为大家分享了微信小程序支付PHP具体代码,供大家参考,具体内容如下服务器端获取 ...
    99+
    2024-04-02
  • 使用java如何实现一个微信H5支付功能
    这篇文章将为大家详细讲解有关使用java如何实现一个微信H5支付功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。前面做了app微信支付的回调处理,现在需要做微信公众号的支付,花了一天多时间...
    99+
    2023-05-31
    h5支付 java
  • 如何使用php函数来优化多语言支持功能?
    在当今互联网时代,很多网站都面临着多语言支持的需求。为了满足不同地区用户的语言偏好,开发人员需要考虑如何在网站中实现多语言支持功能。对于使用PHP开发的网站,可以通过合理地使用PHP函数来简化多语言支持的实现过程。一、确定支持的语言种类首先...
    99+
    2023-10-21
    函数 优化 多语言
  • 如何使用Angularjs+bootstrap+table多选支持单击行选中实现编辑、删除功能
    小编给大家分享一下如何使用Angularjs+bootstrap+table多选支持单击行选中实现编辑、删除功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获...
    99+
    2024-04-02
  • PHP实现邮件内容的多语言支持功能
    随着全球化的发展,越来越多的公司与个人都开始致力于实现多语言网站的搭建。在这样的背景下,如何实现邮件内容的多语言支持功能已经成为了许多网站管理员必须面对的难题之一。本文将介绍PHP如何实现邮件内容的多语言支持功能。一、获取语言类型首先,我们...
    99+
    2023-05-24
    PHP 多语言 邮件
  • MySQL 实现点餐系统的多语言支持功能
    MySQL 实现点餐系统的多语言支持功能,需要具体代码示例随着全球化的不断发展,多语言的应用需求日益增长。对于点餐系统来说,多语言支持能够提高用户体验,扩大服务范围。MySQL 作为一种强大的关系型数据库管理系统,可以方便地实现点餐系统的多...
    99+
    2023-11-01
    MySQL 多语言支持 点餐系统
  • 如何使用PHP开发点餐系统的多语言支持功能?
    如何使用PHP开发点餐系统的多语言支持功能?随着全球化的发展和人们跨国交流的增加,很多企业和服务提供商都面临一个共同的问题:如何将他们的产品和服务本地化,以满足不同地区和不同语言用户的需求。对于一家餐厅来说,这个问题同样存在。在开发餐厅点餐...
    99+
    2023-11-01
    多语言支持 PHP开发 点餐系统
  • javascript如何实现打印功能
    这篇文章主要介绍“javascript如何实现打印功能”,在日常操作中,相信很多人在javascript如何实现打印功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java...
    99+
    2024-04-02
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作