`
javahacker2
  • 浏览: 43882 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

flexselect 可以输入文本匹配的下拉列表

 
阅读更多

下面为官方文档上面的,在附件里面也有些插件的说明,很容易

How?

First, load the default styles, jQuery, the LiquidMetal scoring algorithm, and the plugin.

<link rel="stylesheet" href="flexselect.css" type="text/css" media="screen" />
<script src="jquery.min.js" type="text/javascript"></script>
<script src="liquidmetal.js" type="text/javascript"></script>
<script src="jquery.flexselect.js" type="text/javascript"></script>

It's important that the styles come before the javascript. Now, let's convert your select boxes into some flexselect goodness on DOM ready:

jQuery(document).ready(function() {
  $("select.flexselect").flexselect();
});

This will turn all select elements with a class of flexselect into a flex matching masterpiece:

<select class="flexselect">
  <option value="1">George Washington</option>
  <option value="2">John Adams</option>
  <option value="3">Thomas Jefferson</option>
  ...
</select>

Flexselect also supports some options to override the default behavior:

 

1.获取当前控件所选的值和文本

如下:

    $("#ID" + "_flexselect").val("文本");    //得到控件的文本    _flexselect只有加上此后缀才行,因为JS后台转成了此下拉列表
    $("#ID" ).val(" ");   //得到控件的值

 

 

2.对下拉列表赋值,然后刷新下拉列表值

例1:

var options = [];
    options.push({
     value : "",
     name : "任意范围"
    });
    var targetSelNode = document.getElementById("accArea1");
    targetSelNode.updateOptions(options);

例2:

var options = [];
    <% List<AccArea> accList =(List<AccArea>)request.getAttribute("accAreaList");
    if(accList!=null && accList.size()>0)
    {
     for(int i=0;i<accList.size();i++){
      AccArea a = accList.get(i);
      a.getId();
      a.getName();
      %>
      options.push({
       value : '<%=a.getId()%>',
       name :  '<%=a.getName()%>'
      });
      <%
     }
    }
     
    %>
    
    var targetSelNode = document.getElementById("accArea1");
    targetSelNode.updateOptions(options);

 

3.使控件失效或生效方法

注:这两种方法以flexselect都没有效果,暂时没有发现好的办法,所以项目中只好将下拉列表值赋空

$("#accArea1").attr("disabled","");    //使生效

$("#accArea1").attr("disabled","none");  // 使失效
    document.all.form.officeCode.disabled=false;
    document.all.form.userPortType.disabled=ture;

 

4.下拉列表的点击事件

 $(document).ready(function() {
         $("select[class*=flexselect]").flexselect(
        {
         allowMismatch: true,
         onblur: changeSelect,
         inputNameTransform:  function(name) { return "new_" + name; }
        
       });            
      });
   这个里面的onblur: changeSelect  就是定义下拉列表的事件方法,然焦点离开时,调用changeSelect,方法
此方法如下:

function changeSelect(seleted, option) {
        if($("#accArea1").val()==""){
            var selObj = document.getElementById("officeCode1");
            selObj.options.length=0;
            return false;
       }else{
           doGetOfficeCodeList();
        }
       }

option为当前选中项的值,通过option.name,option.value得到文本及值,selected

通过var id = seleted.select.attr("id");得到ID,这就方便了!

 

分享到:
评论

相关推荐

    js实现文本框下拉选项自动匹配

    这个功能允许用户在输入框中输入文本时,根据输入的内容动态过滤并显示匹配的下拉选项,极大地提高了用户体验。在本案例中,项目采用了名为"jquery-flexselect"的库,它是一个基于jQuery的插件,专门用于实现这种...

    jquery.flexselect_脚本实例_

    总的来说,jQuery Flexselect 提供了一种高效的方法来提升下拉列表的用户体验。通过其丰富的功能和高度的可定制性,我们可以创建出更加友好、高效的交互界面。在实际项目中,合理利用这个插件,能够显著提升网站或...

    jQuery自动完成插件flexselect

    `flexselect`是一个基于jQuery的插件,它的核心功能是将传统的多选或单选下拉列表转变为一个可自定义、可搜索的输入框。这个插件的设计目标是提供一种灵活且易于使用的解决方案,以满足开发者对自动完成功能的各种...

    jquery.flexselect 0.4和0.2版本 下拉框联想

    当用户在下拉框中输入文字时,插件会实时显示与输入内容匹配的选项,形成一个可滚动的列表,方便用户快速选择。 ### 1.2 多选支持 除了单选模式外,`FlexSelect`还支持多选模式,允许用户同时选择多个选项。 ### ...

    自动完成插件flexselect

    3. 配置选项:Flexselect提供了丰富的配置项,如动画效果、提示文本、最小输入字符数等,可以按需设置。例如,设置最小输入字符数为3: ```javascript $('.flexselect').flexselect({ minChars: 3 }); ``` 三、...

    jquery自动补齐功能插件flexselect用法示例

    也就是select控件的文本项可以让它写。默认的select文本框是只读的,不能写。在网上找到一个jQuery插件:flexselect可以完成这项功能。 将插件放到项目里。然后在页面中引用这个插件。 [removed]&lt;/scr

    jquery+flex+自动补全

    3. **过滤算法**:内置了智能过滤算法,可以根据用户输入快速匹配数据。 4. **键盘导航**:用户可以通过上下键选择建议项,增强交互体验。 5. **可配置选项**:允许开发者调整各种参数,如延迟时间、最大显示条目数...

    jquery-flexselect:一个jQuery插件,可将常规选择框转换为类似Quicksilver,flex-matching,增量查找的控件

    Flex可以将一些击键与较长的琴弦相匹配,这对于打字员而言是一大福音。 Quicksilver,LaunchBar和Launchy等应用程序已使这种键盘输入方法成为一种流行的方法。 现在是时候将相同的功能引入Web控件了。 FlexSelect对...

    select ajax 搜索提示

    5. **AJAX交互**:当用户在搜索框中输入时,使用`ajax`向服务器发送请求,获取匹配的选项数据。这通常涉及到`$.ajax()`或`$.getJSON()`方法: ```javascript $('#searchSelect').on('input', function() { var ...

    模仿google下拉框模仿google下拉框

    `jquery.flexselect-0.2`是一个专门用于创建可扩展和可自定义的下拉选择框的jQuery插件。它提供了类似于Google下拉框的样式和功能,包括自动补全、多选、搜索过滤等功能。以下将详细介绍这个插件以及如何使用它来...

    jQuery Flexselect v 0.2 下拉框提示插件

    内容索引:脚本资源,jQuery,下拉框提示,Flexselect,jQuery插件 jQuery Flexselect 同样是一款下拉框提示插件,也就是大家所说的输入框提示。目前,jQuery Flexselect已经发展到v0.2版本,其用法千变万化,适用的场合...

    jQuery的插件列表(2010-1-25更新)

    4. **jqueryflexselect下拉框自动提示**:改善原生HTML下拉框用户体验,当用户输入时自动提供匹配项,常见于搜索框或选择列表。 5. **jQuery id标签 - 8种不同的很酷的JQuery菜单例子**:提供多种样式和行为的菜单...

Global site tag (gtag.js) - Google Analytics