Jquery插件的使用--AutoComplete

合集下载

jQuery插件库

jQuery插件库

web前端培训教程:jQuery插件库插件(Plugin)也成为jQuery 扩展(Extension),是一种遵循一定规范的应用程序接口编写出来的程序。

目前jQuery 插件已超过几千种,由来自世界各地的开发者共同编写、验证和完善。

而对于jQuery 开发者而言,直接使用这些插件将快速稳定架构系统,节约项目成本。

一.插件概述插件是以jQuery 的核心代码为基础,编写出复合一定规范的应用程序。

也就是说,插件也是jQuery 代码,通过js 文件引入的方式植入即可。

插件的种类很多,主要大致可以分为:UI 类、表单及验证类、输入类、特效类、Ajax 类、滑动类、图形图像类、导航类、综合工具类、动画类等等。

引入插件是需要一定步骤的,基本如下:1.必须先引入jquery.js 文件,而且在所有插件之前引入;2.引入插件;3.引入插件的周边,比如皮肤、中文包等。

二.验证插件Validate.js 是jQuery 比较优秀的表单验证插件之一。

这个插件有两个js 文件,一个是主文件,一个是中文包文件。

使用的时候,可以使用min 版本;在这里,为了教学,我们未压缩版本。

验证插件包含的两个文件分别为:jquery.validate.js 和jquery.validate.messages_zh.js。

//HTML 内容<script type="text/javascript" src="jquery.validate.js"></script><script type="text/javascript" src="jquery.validate.messages_zh.js"></script> <form><p>用户名:<input type="text" class="required" name="username" minlength="2" />*</p><p>电子邮件:<input type="text" class="required email" name="email" /> *</p><p>网址:<input type="text" class="url" name="url" /></p><p><input type="submit" value="提交" /></p></form>//jQuery 代码$(function () { $('form').validate();});只要通过form 元素的jQuery 对象调用validate()方法,就可以实现“必填”、“不能小于两位”、“电子邮件不正确”、“网址不正确”等验证效果。

php截取html字符串及自动补全html标签的方法

php截取html字符串及自动补全html标签的方法

php截取html字符串及自动补全html标签的方法摘要:一、引言二、PHP截取HTML字符串的方法1.使用函数2.使用DOM解析三、自动补全HTML标签的方法1.使用JavaScript2.使用jQuery四、实例演示五、总结正文:一、引言在Web开发中,HTML、CSS和JavaScript是最基本的技能。

随着前端技术的不断发展,我们需要掌握更多高效、简洁的方法来处理HTML字符串。

本文将详细介绍如何在PHP中截取HTML字符串及自动补全HTML标签的方法。

二、PHP截取HTML字符串的方法1.使用函数在PHP中,可以使用函数`substr`来截取HTML字符串。

以下是一个示例:```php$html = "<div class="content">Hello, World!<br>This is a sample HTML string.</div>";$substring = substr($html, 0, 20);echo $substring; // 输出:Hello, World!```2.使用DOM解析还可以使用DOM解析器来截取HTML字符串。

以下是一个示例:```php$html = "<div class="content">Hello, World!<br>This is a sample HTML string.</div>";$dom = new DOMDocument();@$dom->loadHTML($html);$node = $dom->getElementsByTagName("div");$substring = $node[0]->nodeValue;echo $substring; // 输出:Hello, World!```三、自动补全HTML标签的方法1.使用JavaScript在HTML中,可以使用JavaScript实现自动补全功能。

JQueryautocomplete获得焦点触发弹出下拉框

JQueryautocomplete获得焦点触发弹出下拉框

JQueryautocomplete获得焦点触发弹出下拉框需求:autocomplete控件,当点击获得焦点的时候也要弹出下拉列表(autocomplete默认是输⼊之后才会跟随出下拉列表),下⾯直接贴代码。

js代码:$("#customerName").autocomplete({minLength: 0,source: function (request, response) {var customerName = $("#customerName").val();$.ajax({url: "/api/pmstransaction/getcustomerinfo",dataType: "json",data: {customerName: customerName},success: function (data) {response(data.Data);}});},focus: function (event, ui) {$("#customerName").val(ui.item.CustomerName);return false;},select: function (event, ui) {module.viewModel.customerInfo.CustomerName(ui.item.CustomerName);module.viewModel.customerInfo.CustomerTaxCode(ui.item.CustomerTaxCode);module.viewModel.customerInfo.CustomerAddressPhone(ui.item.CustomerAddressPhone);module.viewModel.customerInfo.CustomerBankAccount(ui.item.CustomerBankAccount);return false;}}).focus(function () {$(this).autocomplete("search");}).autocomplete("instance")._renderItem = function (ul, item) {return $("<li>").append("<div>" + item.CustomerName + "</div>").appendTo(ul);} 重点代码focus(function () {$(this).autocomplete("search");})。

jQuery formValidator表单验证插件

jQuery formValidator表单验证插件

jQuery formValidator表单验证插件是什么?jQuery formValidator表单验证插件,它是基于jQuery类库,实现了js脚本于页面html代码的分离。

你可以划分多个校验组,每个组的校验都是互不影响。

对一个表单对象,你只需要写一行代码就可以轻松实现无数种(理论上)脚本控制。

目前支持5种大的校验方式,分别是:inputValidator(针对input、textarea、select控件的字符长度、值范围、选择个数的控制)、compareValidator(提供2个对象的比较,目前可以比较字符串和数值型)、ajaxValidator(通过ajax到服务器上做数据校验)、regexValidator(提供可扩展的正则表达式库)、functionValidator (可使用外部函数来做校验)本插件于其他校验控件最大的区别有3点:1、校验功能可以扩展。

对中文、英文、数字、整数、实数、Email地址格式、基于HTTP协议的网址格式、电话号码格式、手机号码格式、货币格式、邮政编码、身份证号码、QQ号码、日期等等这些控制,别的表单校验控件是代码里写死的,而formValidator是通过外部js文件来扩展的,你可以通过写正则表达式和函数来无限的扩展这些功能。

2、实现了校验代码于html代码的完全分离。

你的所有信息都无需配置在校验表单元素上,你只要在js上配置你的信息。

使美工(界面)和javascript工程师的工作不交织在一起3、你只需写一行代码就能完成一个表单元素的所有校验。

你只需要写一行代码就能完成一下所有的控制∙支持所有类型客户端控件的校验∙支持jQuery所有的选择器语法,只要控件有唯一ID和type属性∙支持函数和正则表达式的扩展。

提供扩展库formValidatorReg.js,你可以自由的添加、修改里面的内容。

∙支持2种校验模式。

第一种:文字提示(showword模式);第二种:弹出窗口提示(showalert模式)∙支持多个校验组。

el-autocomplete用法

el-autocomplete用法

el-autocomplete用法
Element UI 的 Autocomplete 组件,是一个根据用户输入关键字自动完成的的控件,它可以使用者输入更快捷、更准确的内容,从而大大提高工作效率。

Element UI 中的 Autocomplete 组件通常有三个部分组成:输入框、提示列表、分
页组件。

使用者只需要在输入框上输入一串关键字,即可在提示列表中快速找到所需内容;此外,还可以通过分页组件,定位需要的提示项,更易快捷。

Element UI 的 Autocomplete 组件具有如下特性:
1、支持绑定数据源:Autocomplete 组件可以绑定从服务器端拉取的数据源,它有更
好的显示效果,更容易找到用户想要查找的内容;
2、支持过滤数据:Autocomplete 组件可以根据用户的输入,自动过滤数据,只显示
与用户输入关键字相关的内容;
3、支持键盘操作:Element UI 中的 Autocomplete 组件支持键盘上下键操作,用户
可以使用键盘进行快速定位操作;
4、支持勾选:Autocomplete 组件支持多项勾选,用户可以批量选择列表中的内容;
Element UI 的 Autocomplete 组件有助于用户提升工作效率,它的使用非常方便,
具有很好的使用体验。

开发者只需要简便的配置当中的参数即可,极大的满足各类业务需求。

基于jQuery 常用控件收集

基于jQuery 常用控件收集

Horizontal accordion: jQuery基于jQuery开发,非常简单的水平方向折叠控件。

Horizontal accordion: jQueryjQuery-Horizontal Accordion具有XBOX360 blade界面风格的水平方向Accordion。

jQuery-Horizontal AccordionAutoComplete-JQueryjQuery插件易于集成到现在的表单中(Form)。

AutoComplete-JQueryFacebook like Autocomplete基于jQuery开发,类似于FaceBoox提供的AutoCompleter。

Facebook like AutocompletejQuery Autocomplete ModjQuery Autcomplete插件。

能够限制下拉菜单显示的结果数。

jQuery Autocomplete Modjqac基于Jquery开发的Autocomplete插件。

具有易于使用,配置简单,既可以利用Ajax读取数据也可以直接从本地获取数据。

jqacjQuery Tag Suggestion类似于提供的tag suggesting功能。

jQuery Tag SuggestionAutocomplete-jQuery ajax利用jQuery(Ajax),PHP和MySQL开发的AutoCompleter。

Autocomplete-jQuery ajaxjQuery.Suggest跨浏览器支持,基于jQuery开发的Autocomplete library。

jQuery.SuggestAutocomplete- jQuery plugin一个jQuery Autocompleter,提供缓存选项来限制对服务器的请求。

Autocomplete- jQuery pluginjquery-aop为JavaScript增加面向方面编程特性的jQuery插件。

JQuery插件autocomplete使用说明文档

JQuery插件autocomplete使用说明文档

JQuery插件autocomplete使⽤说明⽂档项⽬中有时会⽤到ajax⾃动补全查询,就像Google的搜索框中那样,输⼊汉字或者字母的⾸个字母,则包含这个汉字或者字母的相关条⽬会显⽰出来供⽤户选择,该插件就是实现这样的功能的。

autocomplete官⽹:(可下载jQuery autocomplete插件)。

使⽤此插件需要引⽤两个js⽂件和⼀个css⽂件,分别如下:jquery核⼼库⽂件 <script src="./jquery-1.3.2.js"type="text/javascript"></script>当jquery版本过⾼时需要使⽤jquery兼容⽂件<script src="~/Content/jquery-autocomplete/lib/jquery-migrate-1.2.1.js"></script>插件js⽂件 <script src="./jquery.autocomplete.js" type="text/javascript"></script>插件样式⽂件 <link rel="stylesheet" href="./jquery.autocomplete.css" />插件的参数说明如下:minChars(number) 该参数指定在触发autocomplete之前⽤户在查询框中输⼊的最⼩字符数,通常设置为1,即⽂本框值不为空的时候执⾏autocomplete,如果取值为0,则在⽤户双击查询⽂本框或删除⽂本框内容时查询width 该参数的⽤途是指定下拉框的宽度,通常不⽤设置,默认的值为和<input>元素相同max 查询时下拉列表框中显⽰的条⽬数,defaultValue为10delay 击键后激活autoComplete的延迟时间(单位毫秒).Default: 远程为400 本地10autoFill(boolean) 是否在⽤户选择时⾃动将⽤户⿏标所在的值填充到input元素中,default:falsemustMatch(boolean) 参数boolean类型,true时,如果输⼊的查询条件⽆法匹配到合适的结果,则<input>元素中输⼊的查询值会⾃动清空,否则会保留。

jquery-autocomplete 参考手册

jquery-autocomplete 参考手册

{ name: "Donnie Darko", to: "dd@" },指定下拉框的宽度. Default: input元素的宽度* max (Number):autoComplete下拉显示项目的个数.Default: 10* delay (Number):击键后激活autoComplete的延迟时间(单位毫秒).Default: 远程为400 本地10* autoFill (Boolean):要不要在用户选择时自动将用户当前鼠标所在的值填入到input框. Default: false* mustMatch (Booolean):如果设置为true,autoComplete只会允许匹配的结果出现在输入框,所有当用户输入的是非法字符时将会得不到下拉框.Default: false* matchContains (Boolean):决定比较时是否要在字符串内部查看匹配,如ba是否与foo bar中的ba匹配.使用缓存时比较重要.不要和autofill混用.Default: false* selectFirst (Boolean):如果设置成true,在用户键入tab或return键时autoComplete下拉列表的第一个值将被自动选择,尽管它没被手工选中(用键盘或鼠标).当然如果用户选中某个项目,那么就用用户选中的值. Default: true* cacheLength (Number):缓存的长度.即对从数据库中取到的结果集要缓存多少条记录.设成1为不缓存.Default: 10* matchSubset (Boolean):autoComplete可不可以使用对服务器查询的缓存,如果缓存对foo的查询结果,那么如果用户输入foo就不需要再进行检索了,直接使用缓存.通常是打开这个选项以减轻服务器的负担以提高性能.只会在缓存长度大于1时有效.Default: true* matchCase (Boolean):比较是否开启大小写敏感开关.使用缓存时比较重要.如果你理解上一个选项,这个也就不难理解,就好比foot要不要到FOO的缓存中去找.Default: false* multiple (Boolean):是否允许输入多个值即多次使用autoComplete以输入多个值. Default: false* multipleSeparator (String):如果是多选时,用来分开各个选择的字符. Default: ","* scroll (Boolean):当结果集大于默认高度时是否使用卷轴显示Default: true* scrollHeight (Number):自动完成提示的卷轴高度用像素大小表示Default: 180* formatItem (Function):为每个要显示的项目使用高级标签.即对结果中的每一行都会调用这个函数,返回值将用LI元素包含显示在下拉列表中. Autocompleter会提供三个参数(row, i, max): 返回的结果数组, 当前处理的行数(即第几个项目,是从1开始的自然数), 当前结果数组元素的个数即项目的个数. Default: none, 表示不指定自定义的处理函数,这样下拉列表中的每一行只包含一个值.* formatResult (Function):和formatItem类似,但可以将将要输入到input文本框内的值进行格式化.同样有三个参数,和formatItem一样.Default: none,表示要么是只有数据,要么是使用formatItem提供的值.* formatMatch (Function):对每一行数据使用此函数格式化需要查询的数据格式. 返回值是给内部搜索算法使用的. 参数值row* extraParams (Object):为后台(一般是服务端的脚本)提供更多的参数.和通常的作法一样是使用一个键值对对象.如果传过去的值是{ bar:4 },将会被autocompleter解析成my_autocomplete_backend.php?q=foo&bar=4 (假设当前用户输入了foo). Default: {}* result (handler) Returns: jQuery此事件会在用户选中某一项后触发,参数为:event: 事件对象. event.type为result.data: 选中的数据行.formatted:formatResult函数返回的值例如:$("#singleBirdRemote").result(function(event, data, formatted) {//如选择后给其他控件赋值,触发别的事件等等});四、注意问题:1.网上有人说对中文的检索时处理有问题,经过测试此版本没有问题^-^2.在使用远程地址时,它默认传入的参数是:q(输入值),limit(返回结果的最大值),可以使用extraParams传入其他的参数3.autocomplete在使用ajax传递参数时,默认使用了get方式传递,也实在是没有找到可以通过参数提交post方式的办法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Jquery插件的使用--AutoCompleteJquery插件是很不错的一种客户体验,今天就来讲讲我使用的AutoComplete插件,首先需要做一些准备工作:这3个文件还是少不了的(可以到Jquery官网去下载)<script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script><script src="Scripts/jquery.autocomplete.min.js" type="text/javascript"></script><link href="jquery.autocomplete.css" rel="stylesheet" type="text/css" />一、直接使用构造的json数据来实现然后当然是写js代码了,首先来个稍微简单点的,最后的一个列子讲解如何从数据库中提取数据来实现这个效果(实际上都差不多)<script type="text/javascript">var data = [{ name: "Peter", value: "peter@pan.de" },{ name: "Molly", value: "molly@" },{ name: "Forneria Marconi", value: "live@japan.jp" },{ name: "Master <em>Sync</em>", value: "205bw@" },{ name: "Dr. <strong>Tech</strong> de Log", to: "g15@" },{ name: "Don Corleone", value: "don@" },{ name: "Mc Chick", value: "info@" },{ name: "Donnie Darko", value: "dd@" },{ name: "Quake The Net", value: "webmaster@" },{ name: "Dr. Write", value: "write@" },{ name: "GG Bond", value: "Bond@" },{ name: "Zhuzhu Xia", value: "zhuzhu@" },{ name: "liubq", value: "liubenqian@" }];$(function () {$('#keyword').autocomplete(data, {max: 12, //列表里的条目数minChars: 0, //自动完成激活之前填入的最小字符width: 400, //提示的宽度,溢出隐藏scrollHeight: 300, //提示的高度,溢出显示滚动条matchContains: true, //包含匹配,就是data参数里的数据,是否只要包含文本框里的数据就显示autoFill: false, //自动填充//匹配的项所要发生的事件formatItem: function (row, i, max) {//row表示每一行的数据对象,i表示每一行的编号,max表示总的数据行数return + "-->" + " " + row.value;}}).result(function (event, row, formatted) {alert( + form);});});</script>这个比较简单,因为已经构造了一个json数据了(对json不理解的建议先看下json基础方面的知识)二、从数据库中提取数据实现自动提示效果好戏总是在后头,大家关心的还是怎么把数据库中的实际数据也能实现这样的效果对吧,废话不多说先贴代码:js代码:<script type="text/javascript">$(function () {$.getJSON("Handler2.ashx", function (data) {$('#keyword').autocomplete(data, {max: 12, //列表里的条目数minChars: 0, //自动完成激活之前填入的最小字符width: 400, //提示的宽度,溢出隐藏scrollHeight: 300, //提示的高度,溢出显示滚动条matchContains: true, //包含匹配,就是data参数里的数据,是否只要包含文本框里的数据就显示autoFill: false, //自动填充//匹配的项所要发生的事件formatItem: function (row, i, max) {//row表示每一行的数据对象,i表示每一行的编号,max表示总的数据行数// return i + '/' + max + ':"' + + '"[' + row.to + ']';return row.ProductId + "-->" + " " + row.ProductName;}// formatMatch: function (row, i, max) {// return row.ProductId + row.ProductName;// },// formatResult: function (row) {// return row.ProductName;// }}).result(function (event, row, formatted) {alert(row.ProductName + form);});});});</script>注意事项:这里用到了Jquery的getJSON这个方法来获取Handler2.ashx中返回的数据后台代码:我这里使用的是一般处理文件,通过Jquery中的getJSON这个封装的ajax方法来实现:一般处理文件:Handler2.ashxpublic class Handler2 : IHttpHandler{protected DataTable dt = null;public void ProcessRequest(HttpContext context){context.Response.ContentType = "text/plain";dt = DBHelper.GetDataSet();if (dt != null){string data = JsonConvert.SerializeObject(dt);context.Response.Write(data);context.Response.Flush();context.Response.End();}}public bool IsReusable{get{return false;}}}封装的GetDataTable()方法(用来获取数据)public class DBHelper{private static string str = ConfigurationManager.ConnectionStrings["ConnectionStr"].ToString();public DBHelper(){}public static SqlConnection getConnection(){SqlConnection conn = new SqlConnection(str);return conn;}public static DataTable GetDataTable(){DataSet ds = new DataSet();using (SqlConnection conn = DBHelper.getConnection()){string sqlstr = "select * from tb_Product";SqlCommand comm = new SqlCommand(sqlstr, conn);SqlDataAdapter adapt = new SqlDataAdapter(comm);adapt.Fill(ds);}return ds.Tables[0];}}下面展示下效果吧:看到没,还不错吧,出现这么多的瓜,体验效果不错吧,这么多瓜更诱人对吧。

相关文档
最新文档