热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

autocomplete模糊查询改进插件

插件使用:securInfo接口返回data数据$(.grxxgraduSchool).autocomplete(securInfo,{minChars:0,

插件使用:

// securInfo 接口返回data数据
$(".grxxgraduSchool").autocomplete(securInfo,{minChars : 0,// 自动完成激活之前填入的最小字符max : 12, // 列表条目数width : 577, // 提示的宽度scrollHeight : 300,// 提示的高度matchContains : true,// 是否只要包含文本框里的就可以autoFill : false,// 自动填充formatItem : function(data, i, max) {// 格式化列表中的条目// row:条目对象,i:当前条目数,max:总条目数 val='"+data.ID+"'return '

' + data.ChnTitle+ '
';},formatMatch : function(data, i, max) {// 配合formatItem使用,作用在于,由于使用了formatItem,所以条目中的内容有所改变,而我们要匹配的是原始的数据,所以用formatMatch做一个调整,使之匹配原始数据return data.ID + data.ChnTitle;},formatResult : function(data) {// 定义最终返回的数据,比如我们还是要返回原始数据,而不是formatItem过的数据return data.ChnTitle;}}).result(function(event, data, formatted) {// alert(data.SecuAbbr); // 返回所选下拉框的值 问题:会返回多次});
1.第一次点击(获得焦点时不触发检索):

autocomplete.js:165行

.click(function() {// show select when clicking in a focused fieldif ( hasFocus++ > 1 && !select.visible() ) {onChange(0, true);}
})改成:
.click(function() {// show select when clicking in a focused fieldif ( ++hasFocus >= 1 && !select.visible() ) {onChange(0, true);}})

2.IE第一个汉字不能进行检索:

autocomplete.js:199行  新增

.bind("input", function() {onChange(0, true);
})

3.IE第一次点击(获取焦点)时  再次不能进行检索:

    js 添加事件  页面一加载就执行autocomplete


// 新增代码
var orgList= JSON.parse(localStorage.getItem('orgList')), securInfo;
base_ajaxPost("../../org/getAllOrg",null, function (result) {localStorage.setItem('orgList', JSON.stringify(result.data.org));securInfo = result.data.org;getOrgan(securInfo);
},1)// 新增代码$('#select_org').focus(function(){getOrgan(securInfo);
});

4.支持多选

  设置属性即可:

multiple: false,         //是否允许输入多个值. Default: false




问题:插件在谷歌测试没有问题,ie一直报错。794行:document.selection.createRange()

ie不支持这个方法。换成 : document.getSelection()  虽然不报错

但是: 插件多选的时候始终会把新选的值替换掉第一个值。并不能实现模糊查询多选

问题未解决。













推荐阅读
  • DOM事件大全
    1.事件:js与html的交互就是通过事件的,观察者模式2.事件流:从页面中接收事件的顺序IE::事件冒泡流,事件冒泡,事件从最具体的元素接收,然后逐级向上传播,主流浏览器都支持N ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • 本文总结了在编写JS代码时,不同浏览器间的兼容性差异,并提供了相应的解决方法。其中包括阻止默认事件的代码示例和猎取兄弟节点的函数。这些方法可以帮助开发者在不同浏览器上实现一致的功能。 ... [详细]
  • 本文介绍了使用C++Builder实现获取USB优盘序列号的方法,包括相关的代码和说明。通过该方法,可以获取指定盘符的USB优盘序列号,并将其存放在缓冲中。该方法可以在Windows系统中有效地获取USB优盘序列号,并且适用于C++Builder开发环境。 ... [详细]
  • 工作经验谈之-让百度地图API调用数据库内容 及详解
    这段时间,所在项目中要用到的一个模块,就是让数据库中的内容在百度地图上展现出来,如经纬度。主要实现以下几点功能:1.读取数据库中的经纬度值在百度上标注出来。2.点击标注弹出对应信息。3 ... [详细]
  • html结构 ... [详细]
  • 最近做项目时遇到一个问题,产品搜索后出来相关的列表,点击相关商品进入它的详情,返回后组件被重新创建,但产品需求是需要保留进入 ... [详细]
  • PHP图片截取方法及应用实例
    本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
  • 本文介绍了一个题目的解法,通过二分答案来解决问题,但困难在于如何进行检查。文章提供了一种逃逸方式,通过移动最慢的宿管来锁门时跑到更居中的位置,从而使所有合格的寝室都居中。文章还提到可以分开判断两边的情况,并使用前缀和的方式来求出在任意时刻能够到达宿管即将锁门的寝室的人数。最后,文章提到可以改成O(n)的直接枚举来解决问题。 ... [详细]
  • Ihavethefollowingonhtml我在html上有以下内容<html><head><scriptsrc..3003_Tes ... [详细]
  • 本文讨论了如何在codeigniter中识别来自angularjs的请求,并提供了两种方法的代码示例。作者尝试了$this->input->is_ajax_request()和自定义函数is_ajax(),但都没有成功。最后,作者展示了一个ajax请求的示例代码。 ... [详细]
  • PDO MySQL
    PDOMySQL如果文章有成千上万篇,该怎样保存?数据保存有多种方式,比如单机文件、单机数据库(SQLite)、网络数据库(MySQL、MariaDB)等等。根据项目来选择,做We ... [详细]
  • 本文实例讲述了Android编程实现读取工程中的txt文件功能。分享给大家供大家参考,具体如下:1.众所周知,Android的res文件夹 ... [详细]
author-avatar
2674224139_8a6503
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有