jQuery+Ajax请求本地数据加载商品列表页并跳转详情页的实现方法


Posted in jQuery onJuly 12, 2017

效果:

jQuery+Ajax请求本地数据加载商品列表页并跳转详情页的实现方法

json文件:

{
 "books":[
  {"id":1,"imgUrl":"images/ly.jpg","price":"45.00","title":"论语","publish":"人民文学出版社","num":"303","desc":"崇贤馆始置唐代太宗朝。1999年,李克先生及志同道合者复兴其宗旨。以积累、传播中华优秀传统文化,提供全新国学体验馆为宏愿。"},
  {"id":2,"imgUrl":"images/zy.jpg","price":"45.00","title":"中庸","publish":"人民教育出版社","num":"403","desc":"崇贤馆始置唐代太宗朝。1999年,李克先生及志同道合者复兴其宗旨。以积累、传播中华优秀传统文化,提供全新国学体验馆为宏愿。"},
  {"id":3,"imgUrl":"images/dx.png","price":"45.00","title":"大学","publish":"机械工业出版社","num":"503","desc":"崇贤馆始置唐代太宗朝。1999年,李克先生及志同道合者复兴其宗旨。以积累、传播中华优秀传统文化,提供全新国学体验馆为宏愿。"},
  {"id":4,"imgUrl":"images/mz.jpg","price":"45.00","title":"孟子","publish":"人民邮电出版社","num":"320","desc":"崇贤馆始置唐代太宗朝。1999年,李克先生及志同道合者复兴其宗旨。以积累、传播中华优秀传统文化,提供全新国学体验馆为宏愿。"},
  {"id":5,"imgUrl":"images/sj.jpg","price":"45.00","title":"诗经","publish":"人民文学出版社","num":"308","desc":"崇贤馆始置唐代太宗朝。1999年,李克先生及志同道合者复兴其宗旨。以积累、传播中华优秀传统文化,提供全新国学体验馆为宏愿。"},
  {"id":6,"imgUrl":"images/ss.jpg","price":"45.00","title":"尚书","publish":"人民文学出版社","num":"603","desc":"崇贤馆始置唐代太宗朝。1999年,李克先生及志同道合者复兴其宗旨。以积累、传播中华优秀传统文化,提供全新国学体验馆为宏愿。"},
  {"id":7,"imgUrl":"images/lj.jpg","price":"45.00","title":"礼记","publish":"上海人民出版社","num":"703","desc":"崇贤馆始置唐代太宗朝。1999年,李克先生及志同道合者复兴其宗旨。以积累、传播中华优秀传统文化,提供全新国学体验馆为宏愿。"},
  {"id":8,"imgUrl":"images/yj.jpg","price":"45.00","title":"易经","publish":"人民文学出版社","num":"803","desc":"崇贤馆始置唐代太宗朝。1999年,李克先生及志同道合者复兴其宗旨。以积累、传播中华优秀传统文化,提供全新国学体验馆为宏愿。"},
  {"id":9,"imgUrl":"images/cq.jpg","price":"45.00","title":"春秋","publish":"电子工业出版社","num":"903","desc":"崇贤馆始置唐代太宗朝。1999年,李克先生及志同道合者复兴其宗旨。以积累、传播中华优秀传统文化,提供全新国学体验馆为宏愿。"} 
 ]
}

商品列表页goodsList.js:

//请求json数据拼接字符串,并在URL传参数id跳转
$(function(){
 $.ajax({
  type:"get",
  url:"data/data.json",
  dataType:"json",
  success:function(res){
   var str = "<ul class='con_ul'>";
   $.each(res.books, function(idx,val) {
    str +="<li class=\"sec_li\"><a href='goodsDetail.html?booksId="+val.id+"' class='lp_li_a'><div class='lp_li_imgWrap'><img src='"+val.imgUrl+"'/></div><p class='lp_li_name'>"
      +val.title+"</p><p class='lp_li_price'>"
      +'¥'+val.price+"</p></a><li>";
   });
   str += "</ul>";
   $('.content').append(str);
  },error:function(){
   alert(error)
  }
 });
})

商品详情页goodsDetail.js:

$(function(){
  //获取url中的参数
  function getUrlParam(name) {
   var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
   var r = window.location.search.substr(1).match(reg); //匹配目标参数
   if (r != null) return unescape(r[2]); return null; //返回参数值
  }
  //接收URL中的参数booksId
  var id = getUrlParam('booksId');
  console.log('id:'+id);
  $.ajax({
  type:'get',
  url:'data/data.json',
  dataType:'json',
  success:function(res,status){
   console.log(status)
   $.each(res.books, function(idx,val) {
    //根据id获取详情数据
    if(id == val.id){
     var str = "<img src='"+val.imgUrl+"'/><p>出版编号:"+val.id+"</p><p>出版社:"+val.publish+"</p><p>页数:"+val.num+"</p><p>简介:"+val.desc+"</p>";
     console.log('index:'+idx);
    }
    $('.booksDeatail').append(str);
   });
  }
  })
})

以上所述是小编给大家介绍的jQuery+Ajax请求本地数据加载商品列表页并跳转详情页,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
jquery.guide.js新版上线操作向导镂空提示jQuery插件(推荐)
May 20 jQuery
关于jQuery库冲突的完美解决办法
May 20 jQuery
jQuery 实现图片的依次加载图片功能
Jul 06 jQuery
jQuery:unbind方法的使用详解
Aug 14 jQuery
使用jQuery实现页面定时弹出广告效果
Aug 24 jQuery
jQuery实现的form转json经典示例
Oct 10 jQuery
jquery获取transform里的值实现方法
Dec 12 jQuery
jquery在启动页面时,自动加载数据的实例
Jan 22 jQuery
js jquery 获取某一元素到浏览器顶端的距离实现方法
Sep 05 jQuery
jquery树形插件zTree高级使用详解
Aug 16 jQuery
jquery分页优化操作实例分析
Aug 23 jQuery
jquery实现手风琴案例
May 04 jQuery
jQuery 循环遍历改变a标签的href(实例讲解)
Jul 12 #jQuery
jQuery实现节点的追加、替换、删除、复制功能示例
Jul 11 #jQuery
使用jQuery实现动态添加小广告
Jul 11 #jQuery
jquery.validate.js 多个相同name的处理方式
Jul 10 #jQuery
jQuery实现html table行Tr的复制、删除、计算功能
Jul 10 #jQuery
jQuery实现QQ空间汉字转拼音功能示例
Jul 10 #jQuery
基于jQuery Easyui实现登陆框界面
Jul 10 #jQuery
You might like
基于python发送邮件的乱码问题的解决办法
2013/04/25 PHP
Thinkphp框架 表单自动验证登录注册 ajax自动验证登录注册
2016/12/27 PHP
javascript定时变换图片实例代码
2013/03/17 Javascript
下载文件个别浏览器文件名乱码解决办法
2013/03/19 Javascript
ichart.js绘制虚线、平均分虚线效果的实现代码
2016/05/05 Javascript
Web程序员必备的7个JavaScript函数
2016/06/14 Javascript
jQuery fadeOut 异步实例代码详解
2016/08/18 Javascript
初识简单却不失优雅的Vue.js
2016/09/12 Javascript
JS 全屏和退出全屏详解及实例代码
2016/11/07 Javascript
基于jQuery实现顶部导航栏功能
2016/12/27 Javascript
jQuery实现web页面樱花坠落的特效
2017/06/01 jQuery
jQuery.form.js的使用详解
2017/06/14 jQuery
微信小程序实现登录遮罩效果
2018/11/01 Javascript
浅谈Vue为什么不能检测数组变动
2019/10/14 Javascript
[01:00]一分钟回顾2018DOTA2亚洲邀请赛现场活动
2018/04/07 DOTA
[59:15]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第一场 11.20
2020/11/20 DOTA
详解python中的json的基本使用方法
2016/12/21 Python
Python3中简单的文件操作及两个简单小实例分享
2017/06/18 Python
Python单体模式的几种常见实现方法详解
2017/07/28 Python
python sorted函数的小练习及解答
2019/09/18 Python
python系统指定文件的查找只输出目录下所有文件及文件夹
2020/01/19 Python
解决tensorflow打印tensor有省略号的问题
2020/02/04 Python
python使用hdfs3模块对hdfs进行操作详解
2020/06/06 Python
使用python实现学生信息管理系统
2021/02/25 Python
美国知名玩具品牌:Melissa & Doug
2016/08/16 全球购物
日本著名的平价时尚女性购物网站:Fifth
2016/08/24 全球购物
美国第二大连锁药店:Rite Aid
2019/04/03 全球购物
中职生自荐信
2013/10/13 职场文书
竞选宣传委员演讲稿
2014/05/24 职场文书
工程售后服务方案
2014/06/08 职场文书
2014年语文教学工作总结
2014/12/17 职场文书
2015年电工工作总结
2015/04/10 职场文书
2015年度招聘工作总结
2015/05/28 职场文书
银行文明优质服务培训心得体会
2016/01/09 职场文书
会计手工模拟做账心得体会
2016/01/22 职场文书
SqlServer常用函数及时间处理小结
2023/05/08 SQL Server