Jquery+Ajax限制查询间隔
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Jquery20150305.aspx.cs" Inherits="Jquery20150305" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Jquery异步查询加载效果</title>
<script src="JS/jquery-1.9.1.js" type="text/javascript"></script>
<link href="Styles/Site.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.span_query { cursor:pointer;}
</style>
<script type="text/javascript">
$(function () {
$(".span_query").click(function () {
var val = $(this).attr("data-value");
var id = $(this).attr("id");
AjaxQuery($(this),val);
});
}); function AjaxQuery(obj, v) {
$.ajax({
url: 'Ajax/Handler.ashx?queryType=score&queryValue=' + v,
type: 'POST',
dataType: 'text',
timeout: 10000,
cache: false,
beforeSend: LoadFunction,
error: erryFunction,
success: succFunction
})
function LoadFunction() {
obj.html('<img src="Images/loading02.gif" />');
}
function erryFunction() {
obj.html('error');
}
function succFunction(tt) {
obj.html('');
obj.html(tt);
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<table style="width:100%" class="gvCss">
<tr class="head"><td style="width:10%;">姓名</td><td style="width:30%;">语文</td><td style="width:30%;">数学</td><td style="width:30%;">英语</td></tr>
<tr><td>张三</td>
<td id="query1" title="点击查询" class="span_query" data-value="1">查询</td>
<td id="query2" title="点击查询" class="span_query" data-value="2">查询</td>
<td id="query3" title="点击查询" class="span_query" data-value="3">查询</td></tr>
</table>
</div>
</form>
</body>
</html>
<%@ WebHandler Language="C#" Class="Handler" %> using System;
using System.Web;
using System.Web.SessionState; //Handler.ashx
public class Handler : IHttpHandler, IRequiresSessionState
{ public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
string queryType = context.Request["queryType"];
string queryValue = context.Request["queryValue"]; if (context.Session["preQuery"] == null) //第一次查询
{
context.Session["preQuery"] = queryValue + "@" + DateTime.Now.AddDays(-1);
context.Session["currQuery"] = queryValue + "@" + DateTime.Now;
}
else //存在上次查询
{
string[] preStrs = context.Session["currQuery"].ToString().Split('@');
context.Session["preQuery"] = queryValue + "@" + preStrs[1]; //重置为当前查询参数+上次查询时间
context.Session["currQuery"] = queryValue + "@" + DateTime.Now;
} string[] strs=context.Session["preQuery"].ToString().Split('@');
if (strs[0] == queryValue) //同一请求限制查询间隔
{
DateTime preTime = Convert.ToDateTime(strs[1]);
DateTime nowTime = DateTime.Now;
bool flag = CheckQueryTimeSpan(preTime, nowTime, 3);
if (flag)
{
context.Response.Write("查询间隔3秒");
}
else
{
context.Response.Write("98");
}
}
context.Response.End();
} /// <summary>
/// 判断本次查询和上次查询间隔是否小于指定秒数
/// </summary>
/// <param name="preTime">上次查询时间</param>
/// <param name="nowTime">本次查询时间</param>
/// <param name="timeSpan">指定秒数</param>
/// <returns></returns>
public bool CheckQueryTimeSpan(DateTime preTime, DateTime nowTime, int timeSpan)
{
TimeSpan ts = nowTime - preTime;
int difference = ts.Seconds;
bool flag = (difference < timeSpan) ? true : false;
return flag;
} public bool IsReusable {
get {
return false;
}
} }
Jquery+Ajax限制查询间隔的更多相关文章
- jquery ajax 前前后后,所有的函数并查询链接
jQuery Ajax 操作函数 jQuery 库拥有完整的 Ajax 兼容套件.其中的函数和方法允许我们在不刷新浏览器的情况下从服务器加载数据. 函数 描述 jQuery.ajax() 执行异步 H ...
- Jquery+Ajax下拉框级联查询
- 2018.2.28 PHP中使用jQuery+Ajax实现分页查询多功能如何操作
PHP中使用jQuery+Ajax实现分页查询多功能如何操作 1.首先做主页Ajax_pag.php 代码如下 <!DOCTYPE html> <html> <head& ...
- 继上篇-jquery ajax提交 本篇用ajax提交的数据去数据库查询
上篇讲到如何用jquery ajax提交数据至后台,后台接收并返回给ajax.https://www.cnblogs.com/tiezhuxiong/p/11943328.html 今天我们把数据传到 ...
- 基于Jquery+Ajax+Json+存储过程 高效分页
在做后台开发中,都会有大量的列表展示,下面给大家给大家分享一套基于Jquery+Ajax+Json+存储过程高效分页列表,只需要传递几个参数即可.当然代码也有改进的地方,如果大家有更好的方法,愿留下宝 ...
- jQuery.ajax(url,[settings])
概述 通过 HTTP 请求加载远程数据. jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax() 返回其创建的 XMLHttpRequest 对象. ...
- 用.NET MVC实现长轮询,与jQuery.AJAX即时双向通信
两周前用长轮询做了一个Chat,并移植到了Azure,还写了篇博客http://www.cnblogs.com/indream/p/3187540.html,让大家帮忙测试. 首先感谢300位注册用户 ...
- JavaScript强化教程——jQuery AJAX 实例
什么是 AJAX?AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML).简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据 ...
- 再谈Jquery Ajax方法传递到action 【转载】
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://cnn237111.blog.51cto.com/2359144/984466 之 ...
随机推荐
- 转:H2 入门
H2 Database做为轻量级的内嵌数据库,功能十分强大,而且运行时只需要一个jar包即可,下表是官网的描述: 更详细的对比见官网页面: http://www.h2database.com/html ...
- Http协议详解,获取doPost,doGet提交的数据,以及编码问题
一 什么是Http协议 http协议: 浏览器客户端 和 服务器端 之间数据传输的格式规范 二 如何查看Http协议的内容 1)使用火狐的firebug插件(右键->firebug->网 ...
- 201521123071 《JAVA程序设计》第七周学习总结
第7周-集合 1. 本周学习总结 以你喜欢的方式(思维导图或其他)归纳总结集合相关内容. 1.1 Iterator<E> iterator(); //iterator()返回一个实现了It ...
- 201521123025 《Java程序设计》第2周学习总结
1. 本章学习总结 一些注意: (1)在JAVA中,不加后缀的浮点数被默认为double型,如果要用float型就要在数据后加上f或F后缀,如float a=32.6f(正确);float a=32. ...
- 201521123020《java程序设计》第1周学习总结
1.本周学习总结 1.对JAVA的历史发展的了解 2.了解Java与C/C++的区别,Java语言所写程序较为繁琐,C/C++较为简洁. 3.安装java和jdk 2.书面作业 Q1.为什么java程 ...
- 201521123115《Java程序设计》第13周学习总结
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu ...
- php使用ZipArchive压缩文件的心得
$zip=new ZipArchive; if($zip->open('test.zip',ZipArchive::CREATE)===TRUE){ $zip->addFile('imag ...
- Python 的笔试题
其实大多数说学习Python 是纯兴趣,真的我不信,许多人已经工作了,没有那么多时间搞自己的纯兴趣了,都会为了生活奋斗,可以说转行来学python 就是未来加薪,当然,小编现在也快要准备工作了,所以也 ...
- 第三节课:简单的网络命令和ARP欺骗
MTU :最大传输单元 RX:收包 TX: 发包 Ifconfig: IP配置命令,config是linux中用于显示或配置网络设备(网络接口卡)的命令 ifconfig eth0 192.168 ...
- java web项目修改favicon.ico图标的方式
1.修改整个项目的tomcat图标 找到tomcat的根目录(tomcat-webapps-ROOT目录),然后将修改的favicon.ico图标覆盖掉本地的图标,然后再重启项目,刷新,清除浏览器缓存 ...