jQuery-AutoComplete自动提示简单实现
注:本次案列实现功能为 用户注册信息,如果数据库对应表中存在部分信息,点击已有的用户的用户名,自动补全其它已有的基本信息
实现思路:通过AutoComplete提示,异步通过用户名查询全表,充当AutoComplete数据源source , 当点击文本框输入用户名前一个字时,把从数据库中匹配到的用户名绑定到下拉框中,当点击下拉框中的用户名时,自动补全其它信息
1:首先引入需要的文件:两个js文件,两个css文件 如下:
<link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css">
<script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
<link rel="stylesheet" href="jqueryui/style.css">
前段html代码:
<form id="form1" runat="server">
<asp:TextBox ID="txtName" runat="server"></asp:TextBox> 用户名
<br />
<asp:TextBox ID="txtPhone" runat="server"></asp:TextBox> 电话
<br />
<asp:TextBox ID="txtAdd" runat="server"></asp:TextBox> 家庭住址
</form>
JavaScript代码:
<script>
$(function () {
$("#txtName").autocomplete({ //用户名
minLength: 0,
source: "Handler.ashx", 异步查出的全表数据充当数据源
focus: function (event, ui) { focus为焦点事件
$("#txtName").val(ui.item.UserName + " " + ui.item.Phone); //因为数据库中会有重名的 所有在这里我把用户名和电话一起绑出
return false
},
select: function (event, ui) { select为: 下拉框点击事件
$("#txtName").val(ui.item.UserName); 给用户名文本框赋值
$("#txtPhone").val(ui.item.Phone); 电话文本框赋值
$("#txtAdd").val(ui.item.Add); 家庭地址赋值
return false;
}
})
.data("ui-autocomplete")._renderItem = function (ul, item) { 拼出的li标签为样式
return $("<li>")
.append("<a>" + item.UserName + " " + item.Phone + "</a>")
.appendTo(ul);
};
});
</script>
异步C#代码:
string querystring = context.Request["term"].ToString(); term为参数名 这个参数可以通过谷歌浏览器开发者查看,默认的参数,刚加载参数为空查询全表,当你点击用户名时候,team对应的值就是你点击的内容,接收到你点击的内容,去数据库中模糊查询
StringBuilder str = new StringBuilder();
DataSet ds = KangHui.BaseClass.DbHelperSQL.Query("select * from dbo.Users where UserName Like '%"+querystring+"%'", KangHui.Common.ConfigHelper.GetConnectionString("sqlconn"));
拼JSON串
if (ds.Tables[0].Rows.Count > 0)
{
str.Append("[");
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
str.Append("{\"Phone\":\"" + ds.Tables[0].Rows[i]["Phone"] + "\",\"UserName\":\"" + ds.Tables[0].Rows[i]["UserName"] + "\",\"Age\":\"" + ds.Tables[0].Rows[i]["Age"] + "\"},");
}
str.Remove(str.Length - 1, 1);
str.Append("]");
} context.Response.Write(str.ToString());
代码到这里就基本结束啦!希望大神们多多指教哈!
jQuery-AutoComplete自动提示简单实现的更多相关文章
- 在eclipse-jee-juno中配置Aptana对jQuery代码自动提示
主要问题 在Aptana的Web Project中打开js文件有JavaScript的自动提示,但是在JavaEE项目中却没有. 版本 eclipse-jee-juno,即Eclipse 4.2的Ja ...
- 如何在myeclipse中实现jquery的自动提示功能
在web开发过程中,myeclipse中jsp可以实现自动提示功能,但是jquery代码却无法实现自动提示,需要自己一个个手动去输入,效率过低,怎么办? 工具/原料 jquery 1.8.3.js ...
- jquery autocomplete自动补全
简单用法: $(function(){ var data = "the People's Republic of China".split(" "); $(&q ...
- 使用jQuery Autocomplete(自动完成)插件
jQuery 的Autocomplete(自动完成.自动填充)插件有不少,但比较下来我感觉,还是bassistance.de 的比较强大,我们就来写一些代码感受一下. 最简单的Autocomplete ...
- jquery.autocomplete自动补全功能
项目实例: 一:js //SupplierAutoComplete.js $().ready(function () { $("#txtSupplier").autocomplet ...
- jQuery AutoComplete 自动补全
jQuery.AutoComplete是一个基于jQuery的自动补全插件.借助于jQuery优秀的跨浏览器特性,可以兼容Chrome/IE/Firefox/Opera/Safari等多种浏览器. 特 ...
- Bootstrap Typeahead/Jquery autocomplete自动补全
使用Bootstrap Typeahead 组件: Bootstrap 中的 Typeahead 组件就是通常所说的自动完成 AutoComplete,自动填充. 效果如图所示: 实现方式: 1.引入 ...
- Jquery实现自动提示下拉框
1.引入脚本库: <script type="text/javascript" src="/Jscripts/jquery-1.3.2.js"&g ...
- jquery输入框自动提示
1. 下载jar包:jquery.autocomplete.js 2. 页面内容:<script type="text/javascript" src="../jq ...
随机推荐
- 【python3 自动化之mysql操作】python3下的mysql入门基础
1.所需资源:pycharm,python3.6,module:pymysql 2.pycharm配置mysql: 新添加一个mysql数据库 ip:192.168.112.54 端口:3306 ...
- 【linux】awk相关
按字段相加文本内容 a 3 b 4 c 5 a 8 d 2 c 6 将上面内容中字段相同的数据相加 awk -F ' ' '{sum[$1]+=$2}END{for(i in sum){print i ...
- spring-boot-starter-thymeleaf 避坑指南
第一步:pom配置环境 先不要管包是做什么的 总之必须要有 否则进坑 <!--避坑包--> <dependency> <groupId>net.sourceforg ...
- 有标号的DAG计数I~IV
题解: https://www.cnblogs.com/zhoushuyu/p/10077241.html 看到这么一篇,发现挺不错的..
- win10运行LoadRunner Controller遇到的坑
第一次在win10上运行性能测试,结果 解决方法: 后来在同事的win10电脑上安装lr11后,竟然可以运行成功,哈哈,看到希望了,不用再安装回win7了,发现他的系统版本是win10企业版,而我的是 ...
- Linux安装Tomcat-Nginx-FastDFS-Redis-Solr-集群——【第九集-补充-之安装iptables】
1,安装完了jdk,tomcat,启动tomcat的bin/startup.sh后,发现在浏览器输入公网ip地址和tomcat的默认(server.xml)中的端口port:8080,无法访问,这主要 ...
- FZU 2285 迷宫寻宝
思路: bfs求最短路径. #include<stdio.h> #include<iostream> #include<queue> #include<cst ...
- Android的Service组件
首先,Service在Android体系中是什么?有什么功能?1. Service是服务,其执行线程是UI主线程(宿主进程的主线程):2. 和Activity最大的不同是:Service不涉及到与用户 ...
- 使用python处理地理数据:Geopandas
说句实话处理地理数据使用python还是比较麻烦的
- X Open Cup named after E.V. Pankratiev. European Grand Prix
A. Arithmetic Rectangle 对于一行或者一列的情况可以递推求出最大值. 对于至少一行或者一列的情况,可以定义四个格子一组横向和纵向的相等关系,然后悬线法求最大子矩阵. 时间复杂度$ ...