jquery查询数据显示在html,通过jQuery的AJAX+一般处理程序轻松实现Html页面的查询功能...

01第一节:查询概述

查询功能在每个软件项目中,都是必备的且是相当重要的一个功能,像百度的搜索框,就是一个查询功能,一个查询功能就能够实现百度的核心功能。

查询功能,有的就一个文本框,比较简单,还有的查询条件比较多,查询的更精准,常用于企业内部的系统。

5258721f2f8f8454a199b6518ac73d5d.png

那么查询的核心工作原理是什么呢?

查询其实就是筛选的意思,根据某个字或词语,在数据库中进行有条件的查询,然后将查询到的结果集返回给客户端,这样在客户端上就可以将查询到的结果以各种方式呈现出来。

这里使用jQuery的AJAX技术以异步的方式从SQL Server 2019数据库中查询数据。并呈现在Html页面上。

02第二节:页面布局

我们在Visual Studio 2019 IDE开发工具中,来实现这个功能,下面,创建一个空白项目:

9a923aa1998a0292e7fa4743ee6063e4.png

上图是一个空白的Web项目,现在我们创建一个Index.html页面,并编写如下代码:

一都编程,每个知识就是一个案例。
ID姓名性别年龄

在Visual Studio 2019中运行一下上面的Html代码:

运行一下结果:

c452dbaaa9232972514f8b2376523233.png

在上图中,页面上有一个搜索框和一个“查询”按钮,还有一个表头。

这里我们只查询“编号”和“姓名”这2个字段的值,图4中的表头已经做好了,后面只是在此表头下添加行数据即可。

03第三节:服务器端数据源编写

这里,我们使用ASP.NET中的一般处理程序来实现从SQL Server 2019数据库中拉取数据,并使用DBHelper.cs类库作为操作数据库的工具。

在Web项目中创建一个一般处理程序GetStudent.ashx,并在GetStudent.ashx.cs文件中编写如下代码:

using System.Web;using Newtonsoft.Json;namespace Yidosoft.Edu.Search{public class GetStudent : IHttpHandler{DBHelper db = new DBHelper();public void ProcessRequest(HttpContext context){//接收值var keyWord = context.Request["keyWord"];context.Response.ContentType = "text/plain";System.Data.DataTable dataTable = db.GetDataTable($"select * from Student where SName like '%{keyWord}%'");var json = JsonConvert.SerializeObject(dataTable, Formatting.Indented);context.Response.Write(json);}public bool IsReusable{get{return false;}}}}

9504a98630974b2063e884e615f9f94a.png

一般处理程序的C#代码说明如下:

使用了DBHelper数据库操作类库,DBHelper.cs参考如下:NET开发-在DBHelper中封装ADO.NET对象,并调用执行添加数据功能

代码编写在ProcessRequest()方法中,并使用HttpContext作为参数的类型,获取Http上下文对象。使用context.Request["keyWord"];获取从客户端传过来的查询关键字。使用DBHelper.cs类库的GetTable()方法得到查询后的结果集。这里使用了第三方的Newtonsoft对DataTable表数据进行JSON序列化,转换为JSON格式的数据。Newtonsoft可通过NuGet方式添加。测试一下这个一般处理程序是否能正常运行:

973dbea9a55b23b6c31ade95780603f1.png

在运行的结果中,使用了“小”作为关键字,并查询出来了3行数据,并存放在数组中。

04第四节:使用jQuery的AJAX请求数据

现在,我们在Html代码中编写JS代码,当然,这些JS代码也可以放在单独的*.js文件中,这里为了演示方便,就与html放在一起了。

在Html代码的

头中添加使用jQuery的Ajax技术请求远程数据的代码。

这里我们先写一个基本的AJAX请求,先保证能够请求成功:

一都编程,每个知识就是一个案例。

此JS代码说明如下:

使用jQuery选择器先得到搜索文本框中输入的关键字。然后将关键字放在*.ashx?后面作为参数请求。期望服务器返回的类型是json。使用GET请求方式。$.ajax()的回调函数中,data参数就是请求后返回的JSON数据。这里在控制台上输出。运行一下上面的代码,结果如下:

21bdddc4c71e0e1f01948c07c9667fdf.png

当我们在文本框中输入查询关键字“小”时,并查询后,得到一个具有3个对象的数组。

这说明我们请求成功,还可以在“Network”中查看请求信息:

099645911b55a7b3e0bc51556e1f56b7.png

此时,请求后返回的状态码是200,表示请求成功了。

剩下的事就是如何将得到的数据在Html页面上显示出来了。

完整的jQuery AJAX代码如下:

好了,上面我们将html代码和jQuery代码全部编写完成了,现在我们运行一下最终的效果:

ec594ebcd658dbd3042805b507c6d2c7.png

当在文本框中输入“小”并点击“查询”按钮后,根据姓名开始在数据库中查找,并最后将所有带“小”字的姓名显示出来了。

在上面,通过四个步骤使用AJAX技术在服务器上获取到了表格数据:

先布局好页面效果,主要使用Html+CSS技术。在服务器端编写从数据库获取数据的代码,并转换为JSON格式。使用jQuery的ajax技术从客户端开始向服务器发起GET请求,并将请求后的数据放在

举报/反馈

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值