一、html代码

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>最近浏览记录</title>
<script type="text/javascript" src="/scripts/jquery/jquery-1.10.2.min.js"></script>
<script src="/scripts/json.js" type="text/javascript"></script>
<script src="/scripts/jquery/jquery.cookie.js" type="text/javascript"></script>
<script>
(function ($) { $.history = function (e) {
var e = $.extend({
cookieName: "PrdIDCookie", //cookie名称
nid: 100, //最新访问的商品ID
N: 5 //设置cookie保存的浏览记录的条数
}, e)
var fn = {
cutstr:function(str, len, chr) {
var temp;
var icount = 0;
var patrn = /[^\x00-\xff]/;
var strre = "";
for (var i = 0; i < str.length; i++) {
if (icount < len - 1) {
temp = str.substr(i, 1);
if (patrn.exec(temp) == null) {
icount = icount + 1
} else {
icount = icount + 2
}
strre += temp
} else {
break
}
}
return typeof(chr)=="undefined"? strre:strre + chr;
},
//记录最近浏览过的商品
record: function () {
var _historyp;
if ($.cookie(e.cookieName) == null) { //cookie 不存在
$.cookie(e.cookieName, e.nid, { expires: 7, path: '/' }); //创建新的cookie,保存浏览记录
} else { //cookies已经存在
_historyp = $.cookie(e.cookieName); //获取浏览过的商品编号ID
};
var pArray = _historyp.split(','); //分解字符串为数组
_historyp = e.nid; //最新访问的商品编号放置载最前面
var count = 0; //判断是该商品编号是否存在于最近访问的记录里面
for (var i = 0; i < pArray.length; i++) {
if (pArray[i] != e.nid) {
_historyp = _historyp + "," + pArray[i];
count++;
if (count == e.N - 1) {
break;
}
}
}
$.cookie(e.cookieName, _historyp); //修改cookie的值
},
bind: function () { //获取最近浏览过的商品
var _historyp = "";
if ($.cookie(e.cookieName) != null) { //cookie 不存在
_historyp = $.cookie(e.cookieName); //获取浏览过的商品ID
}
if (_historyp == null && _historyp == "") {
return;
} else {
var prdIDs = []; //将商品ID以列表或数据的方式保存
var pArray = _historyp.split(',');
for (var i = 0; i < pArray.length; i++) {
if (pArray[i] != "") {
//alert(pArray[i]);
prdIDs.push(pArray[i]);
}
}
//--->请求商品详细详细...
$.post('/tools/submit_ajax.ashx?action=get_history_log', { id_arr: prdIDs.toString() }, function (data) {
var data = JSON.parse(data);
var list = '';
if (data) {
for (var i = 0; i < data.length; i++) {
list += '<li><a href="/fy/show/' + data[i].id + '.html"><font style="color:#0041d9">' + fn.cutstr(data[i].title,20) + '</font>-<font style="color:#ff6600">' + data[i].price + '元/平米.天</font></a></li>';
}
}
$("#history_log").html(list);
});
}
}
}
return fn;
}
})(jQuery)
$.history({
cookieName: "PrdIDCookie",
nid: 1628,
N: 5
}).record();
$.history().bind();
</script>
</head> <body>
<ul id="history_log"></ul>
</body>
</html>

asp.net处理代码

private void get_history_log(HttpContext context)
{
string id = DTRequest.GetFormString("id_arr");
DataTable dt = new BLL.article().Getdata_List("housing", 5, "id in(" + id + ")", "sort_id asc").Tables[0];
var list = new List<object>();
for (int i = 0; i < dt.Rows.Count; i++)
{
DataRow dr = dt.Rows[i];
list.Add(new { id = dr["id"], title = dr["title"], price = dr["price"] });
}
context.Response.Write(new JavaScriptSerializer().Serialize(list));
return;
}

jquery.cookie.js结合asp.net实现最近浏览记录的更多相关文章

  1. jquery.cookie.js 删除cookie

    简单交代一下背景:asp.net页面的上的切换登录按钮的点击事件实现cookie的删除. 但是好像没办法直接删除,通过网上提供的方法,可以使用jquery.cookie.js 来操作cookie的创建 ...

  2. JavaScript-Tool:jquery.cookie.js

    ylbtech-JavaScript-Tool:jquery.cookie.js 1.返回顶部 1.jquery.cookie.js /*! * jQuery Cookie Plugin v1.4.0 ...

  3. jQuery插件 -- Cookie插件jquery.cookie.js(转)

    Cookie是网站设计者放置在客户端的小文本文件.Cookie能为用户提供很多的使得,例如购物网站存储用户曾经浏览过的产品列表,或者门户网站记住用户喜欢选择浏览哪类新闻. 在用户允许的情况下,还可以存 ...

  4. jquery.cookie.js && java后台代码 操作cookie实现记住当前用户输入信息代码

    下载jquery.cookie.js地址看这里:http://pan.baidu.com/s/1gdCPaN5 //初始化页面时验证是否记住了密码 $(document).ready(function ...

  5. 【转】jquery.cookie.js的使用

    Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key/value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是 ...

  6. jquery.cookie.js 操作cookie实现记住密码功能的实现代码

    jquery.cookie.js操作cookie实现记住密码功能,很简单很强大,喜欢的朋友可以参考下.   复制代码代码如下: //初始化页面时验证是否记住了密码 $(document).ready( ...

  7. Jquery.cookie.js 源码和使用方法

    jquery.cookie.js源码和使用方法 jQuery操作cookie的插件,大概的使用方法如下 $.cookie(‘the_cookie’); //读取Cookie值$.cookie(’the ...

  8. jQuery.cookie.js插件了解及使用方法

    jquery.cookie.js插件实现浏览器的cookie存储,该插件是基于jquery开发,方便cookie使用. jquerycookie.js的下载地址 http://plugins.jque ...

  9. jquery.cookie.js使用

    1.下载jquery.cookie.js 官网:http://plugins.jquery.com/cookie/ 或 http://pan.baidu.com/s/1mgynA8g 2.使用方法 $ ...

随机推荐

  1. Linux声卡驱动框图

    1.声卡驱动注册完成后的框图 2.open & hw_params 完.

  2. Android App组件之Fragment说明和示例

    Android App组件之Fragment说明和示例 1 Fragement介绍 Android从3.0开始引入Fragment,主要是为了支持更动态更灵活的界面设计. Fragment是activ ...

  3. python测试开发django-24.表单提交之get请求

    前言 通常我们需要在html页面上输入框里面输入数据,比如登录的时候,输入账号和密码,点提交按钮. 从html把数据提交到服务端,服务端接收数据后判断提交的数据,然后做出对应的响应,这么一整个流程就是 ...

  4. Linux的命名空间详解--Linux进程的管理与调度(二)

    转自:http://blog.csdn.net/gatieme/article/details/51383322 日期 内核版本 架构 作者 GitHub CSDN 2016-05-12 Linux- ...

  5. unity3d 5.6烘焙教程

    unity5.6是今年发布,作为5.x的最后一个版本,有很多烘焙优势,在此总结一些作为5.x系列完结的笔记这个版本在烘焙上的特点就是增加了渐进光照贴图(Progressive Lightmapper) ...

  6. osx升级到10.10后,使用pod install报错解决的方法

    先看下网上的解决方法例如以下: 先依照这个文章做:http://blog.csdn.net/dqjyong/article/details/37958067 大概过程例如以下: Open Xcode ...

  7. Process 'command '/Users/lidaqiang/Library/Android/sdk/build-tools/27.0.3/aapt'' finished with non-zero exit value 1

    Process 'command '/Users/lidaqiang/Library/Android/sdk/build-tools/27.0.3/aapt'' finished with non-z ...

  8. Excel 2016 Power View选项卡不显示的问题

    https://zhuanlan.zhihu.com/p/43543442 PowerView是Excel中的Power系列插件之一,可以基于excel制作交互式仪表板. 初学者在使用Power Vi ...

  9. [转]缓慢但胜在稳健,HBase大势已成

    CSDN Hbase : http://www.csdn.net/tag/hbase 在NoSQL数据库领域,统治产品无疑当属MongDB和DataStax Enterprise(一个领先的Apach ...

  10. [转]Haproxy 1.5.0 正式发布,Web 负载均衡

    From : http://www.oschina.net/news/53070/haproxy-1-5-0 经过 4 年的不懈努力,HAProxy 1.5.0 终于发布了! 相对于 1.4 版本来说 ...