jQuery的Cookie封装,与PHP交互的简单实现


Posted in Javascript onOctober 05, 2016

首先,用到两个jQuery函数,JSON.parse(Json字符串转对象)和JSON.stringify(对象转JSON字符串)

我这里的分成两次封装,因为数据不在一个页面里。

这是第一个页面:

$(".color-gray").click(function(){ 
    var detail = new Object();//自定义一个空对象 将获取的参数放入这个对象 
    detail.userName = $('input[data-node="userName"]').val(); 
    detail.userSex = $(".userSex").val(); 
    detail.detail = $('input[data-node="address"]').val(); 
    detail.phone = $('input[data-node="telephone"]').val(); 
    detail.id = $('input[name="address_id"]').val(); 
     
    $.cookie("info", JSON.stringify(detail));//用JSON.stringify函数将对象转成JSON字符串,放入Cookie里。 
    location.href = "{pigcms{:U('User/adres_map')}"; 
  });

第二个页面:

$(".addresslist").live('click', function(){ 
    info = JSON.parse($.cookie('info'));//因为第一个页面中封装的Cookie是JSON字符串,这里要先转成对象。再将本页面的数据放进去。 
    info.name = $(this).attr("address"); 
    info.longitude = $(this).attr("lng"); 
    info.latitude = $(this).attr("lat"); 
     
    $.cookie('info', JSON.stringify(info));//放进去之后,重新封装 
    location.href = "{pigcms{:U('User/add_adres')}&address_id="+info.id; 
  });

这样,页面运行之后,Cookie中就有了上面的数据。

最后,jQuery清空Cookie,

$(".icon-arrow-left2").click(function(){ 
    $.cookie('info', 0);  
  });

最最后,PHP方法交互,

<pre name="code" class="php">/* 执行编辑 */ 
  public function edit_adres(){ 
    $id = $_POST['address_id']; 
    $params['name']     = $_POST['name']; 
    $params['sex']     = $_POST['sex']; 
    $params['address']   = $_POST['address']; 
    $params['detail']    = $_POST['detail']; 
    $params['phone']    = $_POST['phone']; 
    $params['uid']     = $this->_uid; 
    $params['longitude']  = $_POST['longitude']; 
    $params['latitude']   = $_POST['latitude']; 
    $params['create_time'] = time(); 
     
    if( !$id ){ 
      if($returnId=D('表名')->data($params)->add()){ 
        if(IS_AJAX){ 
          setcookie('info'); 
          $this->ajaxReturn($returnId, '添加成功', 1);exit; 
        }   
      } else { 
        $this->error('添加失败,请重试!'); 
      } 
    } else { 
      $where['address_id'] = $id; 
      if(D('表名')->where($where)->data($params)->save()){ 
        if(IS_AJAX){ 
          setcookie('info'); 
          $this->ajaxReturn($id, '编辑成功', 1);exit; 
        } 
      } else { 
        $this->error('编辑失败,请重试!'); 
      } 
    } 
  }

最最最后,补充一下,

如果需要在页面输出已经写好的cookie,需要先实例化一下,

detail = JSON.parse($.cookie('info'));

然后才能这样使用,

detail.name

以上就是小编为大家带来的jQuery的Cookie封装,与PHP交互的简单实现全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
JS实现浏览器菜单命令
Sep 05 Javascript
MyEclipse取消验证Js的两种方法
Nov 14 Javascript
js统计页面的来访次数实现代码
May 09 Javascript
JavaScript中Math.SQRT2属性的使用详解
Jun 14 Javascript
Js自动截取字符串长度,添加省略号(……)的实现方法
Mar 06 Javascript
基于Vue单文件组件详解
Sep 15 Javascript
JS简单实现点击跳转登陆邮箱功能的方法
Oct 31 Javascript
vue按需加载实例详解
Sep 06 Javascript
微信小程序select下拉框实现源码
Nov 08 Javascript
vue远程加载sfc组件思路详解
Dec 25 Javascript
Jquery如何使用animation动画效果改变背景色的代码
Jul 20 jQuery
vue中keep-alive、activated的探讨和使用详解
Jul 26 Javascript
jQuery实现手机版页面翻页效果的简单实例
Oct 05 #Javascript
浅谈jQuery双事件多重加载的问题
Oct 05 #Javascript
jQuery 获取遍历获取table中每一个tr中的第一个td的方法
Oct 05 #Javascript
Jquery针对tr td的一些实用操作方法(必看篇)
Oct 05 #Javascript
jquery根据td给相同tr下其他td赋值的实现方法
Oct 05 #Javascript
Jq通过td获取同行其它列td的方法
Oct 05 #Javascript
javascript使用闭包模拟对象的私有属性和方法
Oct 05 #Javascript
You might like
mysql中存储过程、函数的一些问题
2007/02/14 PHP
解析mysql left( right ) join使用on与where筛选的差异
2013/06/18 PHP
php把数据表导出为Excel表的最简单、最快的方法(不用插件)
2014/05/10 PHP
PHP实现的一致性Hash算法详解【分布式算法】
2018/03/31 PHP
关于php unset对json_encode的影响详解
2018/11/14 PHP
解决laravel5.4下的group by报错的问题
2019/10/16 PHP
JavaScript加强之自定义event事件
2013/09/21 Javascript
javascript背景时钟实现方法
2015/06/18 Javascript
jQuery简单实现验证邮箱格式
2015/07/15 Javascript
bootstrap modal弹出框的垂直居中
2016/12/14 Javascript
bootstrap table配置参数例子
2017/01/05 Javascript
vue2实现可复用的轮播图carousel组件详解
2017/11/27 Javascript
jQuery实现的点击按钮改变样式功能示例
2018/07/21 jQuery
angular 实时监听input框value值的变化触发函数方法
2018/08/31 Javascript
深入探讨JavaScript的最基本部分之执行上下文
2019/02/12 Javascript
微信小程序 wx:for遍历循环使用实例解析
2019/09/09 Javascript
layui table 列宽百分比显示的实现方法
2019/09/28 Javascript
JavaScript实现文件下载并重命名代码实例
2019/12/12 Javascript
jQuery实现点击滚动到指定元素上的方法分析
2020/03/19 jQuery
Vue中el-form标签中的自定义el-select下拉框标签功能
2020/04/20 Javascript
[06:35]2014DOTA2国际邀请赛 老男孩梦圆西雅图中国军团世界最强
2014/07/22 DOTA
python执行等待程序直到第二天零点的方法
2015/04/23 Python
pandas去除重复列的实现方法
2019/01/29 Python
pycharm重命名文件的方法步骤
2019/07/29 Python
Django 实现Admin自动填充当前用户的示例代码
2019/11/18 Python
使用python自动追踪你的快递(物流推送邮箱)
2020/03/17 Python
Python matplotlib 绘制双Y轴曲线图的示例代码
2020/06/12 Python
Python如何将装饰器定义为类
2020/07/30 Python
关于iframe跨域使用postMessage的实现
2019/10/29 HTML / CSS
UGG雪地靴德国官网:UGG德国
2016/11/19 全球购物
彩色的非洲教学反思
2014/02/18 职场文书
乡镇党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
2015年社区卫生工作总结
2015/04/21 职场文书
为Java项目添加Redis缓存的方法
2021/05/18 Redis
关于k8s环境部署mysql主从的问题
2022/03/13 MySQL
GO中sync包自由控制并发示例详解
2022/08/05 Golang