JQuery 的Autocomplete插件 使用

工作当中用到了JQuery 的Autocomplete插件,但是遇到的是非常规使用的问题。

其一是下拉菜单的显示和填入文本框的结果要求的字符串不一样,即显示用户名,所属部门,但是填入文本框里的是用户名和电话号码

其二是在用户Select过后,需要触发事件,把用户的ID传到另一个隐藏的文本框中

首先咱比较懒,于是在网上google了一下技术方案,发现都比较复杂。出于想偷懒的目的,研究了Autocomplete的在线DOC以后,发现有很简单的解决方案

首先是应用Autocomplete的formatItem和formatResult函数

返回数据集,懒人有懒办法,就用字符串加逗号分隔来表示,一行一个结果:

"NAME1,DEPARTMENT1,TEL1,ID1/r/n NAME2, DEPARTMENT2,TEL2,ID2"

formatItem: 下拉菜单数据显示的定制,这里只显示用户名和部门

formatItem: function(data, i, n) {

      var array = data.toString().split(',') ;
      return array[0] + '/' + array[1] ;

  }
formatResult: 填入文本框的结果,这里填入用户名和电话号码formatItem: function(data, i, n) {

       var array = data.toString().split(',');
        return array[0] + ', ' + array[2];

 }

最后是回调函数,要把用户ID存到一个隐藏文本框中,对此Autocomplete提供了一个子函数.result(),用来在选择结果后回调其他的函数
继续使用万能的split函数来把结果字符串拆分

$('inputfield').autocomplete(url, {options}).result
(function(event, data, formatted) {
         var array = data.toString().split(',');
         $("hiddenfield").val(array[3]);

});
由此懒人的Autocomplete应用就完成了

posted on 2011-11-08 17:07 放逐忧伤 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/navy235/archive/2011/11/08/2241399.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
jQuery Autocomplete 是一个 jQuery 插件,用于实现输入框自动完成功能。它可以根据用户输入的文本,从预设的数据源中提供匹配项,并在下拉列表中展示这些项供用户选择。 下面是使用 jQuery Autocomplete 的详细步骤: 1. 引入 jQueryjQuery Autocomplete 插件的 JS 文件。可以从 jQueryjQuery Autocomplete 的官方网站上下载相关文件。 ```html <script src="jquery.min.js"></script> <script src="jquery.autocomplete.min.js"></script> ``` 2. 在 HTML 中添加一个输入框,并为其设置一个 ID。 ```html <input type="text" id="autocomplete-input"> ``` 3. 在 JavaScript 中初始化 Autocomplete 插件。需要指定输入框的 ID、数据源和其他选项。 ```javascript $('#autocomplete-input').autocomplete({ lookup: ['Apple', 'Banana', 'Cherry', 'Durian', 'Elderberry'], minChars: 1, onSelect: function (suggestion) { alert('You selected: ' + suggestion.value); } }); ``` 其中,`lookup` 属性指定了数据源,可以是一个数组或一个函数。`minChars` 属性指定了最小匹配字符数,当用户输入的字符数小于该值时,不会触发自动完成。`onSelect` 属性指定了用户选择某个匹配项后的回调函数。 4. 根据需要自定义 Autocomplete 的样式。可以使用 CSS 修改下拉列表的样式,或修改 Autocomplete 插件的默认选项。 ```css .autocomplete-suggestions { border: 1px solid #999; background: #FFF; overflow: auto; } .autocomplete-suggestion { padding: 2px 5px; white-space: nowrap; cursor: pointer; } .autocomplete-suggestion:hover { background: #F0F0F0; } .autocomplete-group { font-weight: bold; } ``` 以上就是使用 jQuery Autocomplete 实现输入框自动完成的详细步骤。可以根据实际需求,自定义 Autocomplete 的选项和样式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值