基于jQuery自制智能提示插件
目前实现了以下功能:1 .最基本的要求是根据当前的文本框字符获取适配数据;1.支持同一页面上的多个元素调用这个插件1.2。必要的参数是url 1.3。对于连续输入,所有之前的ajax请求都会被取消,以避免对服务器造成不必要的压力(图4);1.4.最基本的称呼是$ ('myel ')。auto mpt({ URL 3360 ' URL ' });2.空关键字查询开关(emptyRequest),打开时,输入框中会出现提示(作为下拉列表使用),默认值为true(图1)。3.支持联查,即当前文本框的提示结果根据页面上另一个元素的值,只能支持一个关联元素(即父元素)。3.1.它由参数parentID定义。(缺省为空)3.2打开parentID选项时,如果参数定义useParentValue=false(缺省),插件将取其自定义属性进行过滤(关联),否则(真)取元素的Value属性进行关联3.2.1鉴于上述情况,当useParentValue属性为false时,这个元素必须是调用这个插件的元素。3.2.2当useParentValue属性为真时,该元素必须是表单元素(即必须有Value属性),但不一定是智能提示元素。3.2.3没有定义parentID,所以此项没有意义。如果在3.2.4中定义了parentID,那么parented元素必须有一个值,否则,将不会有支持缓存最后一个查询结果的提示4。(当页面的多个元素被调用时,最后一次触发提交的元素也会被判断来决定是否使用缓存。)4.1目前只支持缓存一个元素的结果,有时间可以扩展到缓存每个元素的最后一个查询结果。5默认效果如图1所示。包括:5.1每一项的文字描述5.2每一项的拼音拼写(如有)5.3每一项对应的数据库主键值(如有),6列以上视图不可见,解决了大量短信(如人名)的排列问题。(图2) 6.1用multi打开=false 6.2拼音选项不可见6.3主键值不可见。但还是有6.4,只有取出的记录数大于32 (4*8,目前不匹配,与CSS有很强的相关性)时才能使用。如果更改CSS,主要是指提示框的宽度,请自行更改为合适的效果)。7可分页数据太多8.1目前不支持配置每页显示数8.2目前不支持翻页8.3如果元素选项为multi=true,则智能判断下一页的条目数,如果满足数字条件,则自动变成多列视图,否则恢复默认视图(图3)。8响应的键盘命令是:上一个左:下一个ESC取消提示没有拦截回车事件。提交表格9对后台返回的数据格式有要求。请参见插件中的描述。目前实现了四个字段:id、文本、拼音、上级id。即使没有值,对于小项目也需要发一个null值回9.1,这样就不会有太大的膨胀,否则就像谷歌一样,可以保留相当多的字段,用多维数组返回结果。现在,这个普通的提示就完全够了。欢迎扩展10一般网站方案:10.1 google使用普通ajax查询并返回包含查询条件和查询结果的数组(这个插件的返回值没有查询条件)10.2百度使用ajax返回脚本。将结果作为脚本参数传入,然后自动执行。10.3酷讯采用jQuery的jsonp模式,以回调方式返回结果集(一般我用jsonp的时候是针对跨域的,也就是处理请求的域名和当前页面的域名不一致,浏览器会阻止提交)。10.4本插件采用第一种方案。如果智能提示源不在本域,可以参考百度、酷讯进行更改。11下载地址:本地下载SVN :http://JQ-intellisense-autocomplete.googlecode.com/SVN/trunk/Note:下载的样本项目是一个ASP.NET网站。你需要的支持。net framework3.5,您可以在将其发布到iis后运行它,或者使用vs2008打开网站图1
图3。当您在图2的情况下继续输入或翻页时,当结果少于一页时,默认视图
将自动恢复。
图4。演示在连续输入
下取消以前的ajax请求。
版权声明:基于jQuery自制智能提示插件是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。

















