`
smhx
  • 浏览: 76381 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
社区版块
存档分类
最新评论

自己写的select查询组合框

 
阅读更多

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>Document</title>
 </head>
 <body>
 <div style="border:1px solid  blue">
  <form method="post" action="">
        <select name="" id="a1">
            <option value="" selected>aaa</option>
            <option value="">bbb</option>
        </select>
   
        <select name="" id="a2">
            <option value="" selected>ccc</option>
            <option value="">dd</option>
        </select>
        <select name="" id="a3">
            <option value="" selected>ccc</option>
            <option value="">dd</option>
        </select>
  </form>
  </div>

  aaa

 </body>
</html>
<script>
    function initSelectCombo(selectIds) {
  alert(selectIds);
  if (selectIds == null || selectIds == undefined) {
    return;
  }
  var ids = selectIds.split(',');
  for (i = 0; i < ids.length; i++) {
    if (ids[i] == '') {
      continue;
    }
    var curSel = document.getElementById(ids[i]);
    var pnode = curSel.parentNode;
    // 创建元素
    var sdiv = document.createElement('div');
    sdiv.style.display = 'inline';
    sdiv.style.border = '0px';
     sdiv.style.position = 'relative';
   
    pnode.insertBefore(sdiv, curSel);
    sdiv.appendChild(curSel);
    var sinput = document.createElement('input');
    sinput.style.display = 'none';
    sinput.placeholder = '查询';
    var idd = ids[i];
    sinput.onkeyup = function () {
      querySelect(this.previousSibling);
    };
    var sselect = document.createElement('select');
    sselect.style.display = 'none';
     sselect.style.position = 'absolute';
sselect.style.left = '0';
    sdiv.appendChild(sinput);
    sdiv.appendChild(sselect);
    curSel.onclick = function () {
      querySelect(this);
    }
  }
  var querySelect = function (s) {
    //alert(sid);
    //var s = document.getElementById(sid);
    var s1 = s.nextSibling;
    var s2 = s1.nextSibling;
    var vs = s1.value.toLowerCase();
    if (!s.disabled) {
      s1.style.width = s2.style.width = '120px';
      s.style.display = 'none';
      s1.style.display = 'inline';
      s2.style.display = 'block';
      var op = s.options;
      s2.options.length = 0;
      for (i = 0; i < op.length; i++) {
        if (op[i].innerText.toLowerCase().indexOf(vs) > - 1) {
          var e = document.createElement('option');
          e.value = op[i].value;
          e.innerText = op[i].innerText;
          s2.appendChild(e);
        }
      }
      s2.onchange = function () {
        //alert("s1 change");
        s1.style.display = 'none';
        s2.style.display = 'none';
        s.style.display = 'inline';
        s.value = s2.value;
        if (s.onchange != null && s.onchange != undefined) {
          s.onchange();
        }
      }
      s2.size = 10;
    }
  }
}
initSelectCombo('a1,a2,a3');

</script>

分享到:
评论

相关推荐

    组合框获取文件夹内文件名称,加入到组合框中。

    在这个场景中,"组合框"(ComboBox)和"超级列表框"(SuperListBox)是两种常见的控件,广泛应用于Windows应用程序。下面将详细阐述如何使用易语言来实现标题和描述中提到的功能。 首先,让我们关注“组合框获取...

    select自定义下拉组合框

    在本项目"select自定义下拉组合框"中,我们着重关注如何通过自定义方式来增强`select`元素的功能,使其更加灵活和个性化,同时支持添加、删除等操作。下面我们将深入探讨这一主题。 首先,`select`元素的基本结构...

    鼠标敏感组合框,字体选择组合框,颜色选择组合框

    本资源包中包含的"鼠标敏感组合框,字体选择组合框,颜色选择组合框"是UI设计中的常见元素,它们通常用于提高交互性和易用性。下面将详细阐述这些组件的功能、实现原理以及在实际应用中的作用。 首先,我们来看...

    易语言组合框消息应用

    在实际的源码中,我们可能还会看到其他与组合框相关的消息处理,如处理CB_FINDSTRING、CB_SELECTSTRING等消息,这些都是易语言编程中组合框应用的重要组成部分。 综上所述,"易语言组合框消息应用"的学习涵盖了组合...

    VC组合框的使用

    ### VC组合框的使用 #### 一、简介 在Visual C++(以下简称VC)开发环境中,组合框(ComboBox)是一种非常实用的控件,它结合了文本框与下拉列表的功能,既可以允许用户直接输入文本,又可以在下拉菜单中提供预定...

    易语言数据库与组合框、超级列表框

    若要从数据库中填充组合框,可以通过查询数据,然后逐条将结果添加到组合框中,这样用户就能看到并选择数据库中的数据。 超级列表框则比普通列表框功能更加强大,它可以显示多列数据,并且支持滚动、排序等功能。在...

    组合框的一些API例程源码

    在Windows编程中,组合框(ComboBox)是一种常用的控件,用于提供用户选择项或输入文本的功能。本资源提供的源码示例主要展示了如何利用API函数来操作和自定义组合框的行为。下面将详细讲解组合框的一些关键API例程...

    VFP 组合框

    在VFP中,组合框的数据源可能来自这些数据文件,比如可以设置`LIST`属性为`SELECT DISTINCT FieldName FROM Table1`,这样组合框的下拉列表就会显示`Table1`中`FieldName`字段的所有唯一值。 7. **表2.SCT和表2.scx...

    windows编程组合框控件

    你可以通过继承这个类来定制自己的组合框行为,或者直接使用它提供的功能。创建组合框通常涉及以下几个步骤: - 在资源编辑器中添加控件,设置ID。 - 在视图或对话框类的头文件中声明成员变量,如`CComboBox m....

    access 学习经典源代码access 组合框 两级联动

    在设计时,可以将组合框的`RowSource`属性设置为SQL查询,或直接链接到表/查询。 - 为了实现联动,需要取消子级组合框的数据绑定,改为在VBA中动态填充。 5. **优化与注意事项**: - 为了提高性能,可以在父级...

    带Checkbox的组合框

    在IT界,"带Checkbox的组合框"是一种常见的用户界面元素,它结合了下拉列表(ComboBox)和复选框(Checkbox)的功能,为用户提供了一种多选的交互方式。这种控件通常用于应用程序中,当用户需要从一组选项中选择多个...

    组合框的使用示例

    9. **文件选择:** 用户可以通过点击"Select File"按钮打开一个文件对话框来选择任意目录下的.txt文件,然后将选中的文件名添加到组合框中,通常显示在列表的第一个位置。 10. **界面和用户体验:** 用户界面设计...

    select自定义下拉组合框.zip

    标题中的"select自定义下拉组合框.zip"表明这是一个关于自定义HTML选择器(通常称为下拉组合框或下拉菜单)的代码包。这个压缩文件包含了一系列的HTML、CSS和可能的JavaScript文件,用于创建功能丰富的用户界面元素...

    易语言源码网页联动组合框易语言源码.rar

    网页联动组合框(通常在Web开发中被称为“Dropdown”或“Select Box”)是用户界面中的一个常见元素,用于提供下拉选项供用户选择。在易语言中,实现这样的功能可能涉及到以下几个知识点: 1. **易语言的基本语法**...

    jquery选择组合框复杂库.rar

    特别是对于处理用户界面交互,如选择组合框(Select Box)的操作,jQuery提供了丰富的插件和方法,极大地简化了开发流程。本篇文章将深入探讨名为"jQuery选择组合框复杂库"的资源,该库专门针对选择框的复杂场景进行...

    access数据库的数据怎么添加到组合框中呢

    对于每个查询结果,将对应的值添加到组合框中。使用组合框的“插入文本”或“插入数据”命令,将数据项插入到组合框的列表中。例如,如果字段是`Name`,代码可能如下: ``` .循环 开始 结果集 组合框1.插入文本 ...

    在一个VB的组合框COMBO中显示数据库一列的所以有记录

    一个常见的任务就是将数据库中的一列数据填充到组合框(ComboBox)中,这样用户就可以通过下拉菜单查看和选择数据。本篇文章将详细解释如何在VB的组合框中显示数据库一列的所有记录。 首先,我们需要理解VB中的组合...

    易语言Access数据库添加至组合框

    3. **将数据加载到组合框**:从数据集中获取数据并填充到组合框中,可以使用循环遍历数据集,并用“组合框.添加项”命令添加每一项。例如: ```易语言 .数据集位置 = 数据集.第一记录() .循环中 (数据集.有记录()...

    DAO ComboBoxDAO组合框

    DAO(Data Access Object)组合框是一种在编程中用于数据库应用的控件,它结合了DAO数据访问对象技术与用户界面的下拉列表框功能。在Windows应用程序开发中,特别是使用Visual Basic或VB.NET等语言时,DAO ComboBox...

    使和数据库相连的组合框实现下拉

    这通常通过执行SQL查询并加载记录集到组合框中完成。例如: ```vb Dim rs As New ADODB.Recordset Dim sql As String sql = "SELECT ColumnName FROM TableName" rs.Open sql, conn, adOpenStatic, ...

Global site tag (gtag.js) - Google Analytics