以管理员登录为例来介绍下$this->ajaxReturn与模板页进行ajax交互使用方法
首先看PHP控制器的处理,在application/Admin/Controller/LoginController.class.php控制器里加入登录验证方法
//ajax检验管理员登录是否正确
public function check()
{
  $user = M('User');
  if(!IS_AJAX){
    $this->ajaxReturn(array(
      'info' => '非法的请求方式'
    ));   }
  $user_name = I('user_name', '');
  $user_password = I('user_password', '');   $user_password = md5($user_password);   $filter = array(
    'user_name' => $user_name,
    'user_password' => $user_password
  );   $user_info = $user->where($filter)->find();   if (1 == $user_info['type']) {
    $this->ajaxReturn(array(
      'info' => '你无权登录后台'
    ));
  }   if($user_info){
    // 更新登录ip
    $info['ip'] = get_client_ip();
    //更新登录时间
    $info['update_time'] = date('Y-m-d H:i:s', time());     $user->where(array('id' => $user_info['id']))->save($info);     session('user_id',$user_info['id']);     $data = array(
      'info' => 'ok',
      'callback' => U('user/index/index')
    );
  }else{
    $data = array(
      'info' => '登录失败,请检查登录名和密码是否正确'
    );   }   $this->ajaxReturn($data);
}

  

 登录模板页
$('.submit').click(function(event){
  //阻止表单默认提交事件
  event.preventDefault();
  var userName=$("#user_name").val();
  var userPassword=$("#user_password").val();
  if(userPassword==""||userName==""){
    alert('登录名与密码不能为空 ');
    $("#user_name").focus();
    return false;
  }else{
    var url = "{U('Admin/Login/check')}";
    $.post(url, { user_name:userName, user_password:userPassword}, function(msg){
      if(msg.info == 'ok') {
        //alert('登录成功,正在转向后台主页!');
        window.location.href = msg.callback;
      } else {
        alert(msg.info);
      }
    }, 'json').error(function(){
      alert("网络连接错误,请稍后再试");
    });   }
})

ThinkPHP中使用ajaxReturn进行ajax交互的更多相关文章

  1. 哈哈,找到一种方式来简单模拟EXTJS中与服务器的AJAX交互啦。

    一直在测试客户端的EXTJS,但遇到服务器端就麻烦了,要建库,要写JSON,要有HTTP返回值. 今天测试了一个简单的方法,经过测试是OK了. 那,就是Python的SimpleHTTPServer模 ...

  2. thinkphp中AJAX返回ajaxReturn()方法分析

    本文分析了thinkphp中AJAX返回ajaxReturn()方法.分享给大家供大家参考,具体如下: 系统支持任何的AJAX类库,Action类提供了ajaxReturn方法用于AJAX调用后返回数 ...

  3. thinkphp中的AJAX返回ajaxReturn()

    系统支持任何的AJAX类库,Action类提供了ajaxReturn方法用于AJAX调用后返回数据给客户端.并且支持JSON.XML和EVAL三种方式给客户端接受数据,通过配置DEFAULT_AJAX ...

  4. ThinkPHP中ajax提交数据

    最近在做项目时遇到了一些需要从页面用ajax提交数据到后台的操作,无奈本人技术有限,网上苦寻,研究了一下ajax和thinkPHP的结合,黄天不负苦心人,终于搞定了. 闲话少叙,进入正题:我需要从页面 ...

  5. thinkphp中ajax使用实例(thinkphp内置支持ajax)

    thinkphp中ajax使用实例(thinkphp内置支持ajax) 一.总结 1.thinkphp应该是内置支持ajax的,所以请求类型里面才会有是否是ajax // 是否为 Ajax 请求 if ...

  6. struts2中使用json插件实现ajax交互

    json插件可以简单的实现ajax交互,避免了使用struts2-dojo-plugin.jar包时带来的struts2.x版本冲突问题.并且减少了使用ajax标签时需要的繁琐的配置包括web.xml ...

  7. ThinkPHP中使用ajax接收json数据的方法

    本文实例讲述了ThinkPHP中使用ajax接收json数据的方法.分享给大家供大家参考.具体分析如下: 这里通过ThinkPHP+jquery实现ajax,扩展了下,写了个查询,前台代码如下: 首先 ...

  8. thinkphp中的ajax分页

    thinkphp中用ajax分页和普通的ajax分页的区别在于处理位置的不同,thinkphp是在控制器的方法中处理ajax传的值,然后返回数据.下面是一个点击事件触发后,显示的内容用ajax分页. ...

  9. ThinkPHP 中使用 IS_AJAX 判断原生 JS 中的 Ajax 出现问题

    问题: 在 ThinkPHP 中使用原生 js 发起 Ajax 请求的时候.在控制器无法使用 IS_AJAX 进行判断.而使用 jQuery 中的 ajax 是没有问题的. 在ThinkPHP中.有一 ...

随机推荐

  1. ubuntu update dns server

    edit:  /etc/resolvconf/resolv.conf.d/base nameserver 114.114.114.114 execute this: $ resolvconf -u f ...

  2. Calico在Docker中的搭建

    一,Multi-host网络需求 开始之前推荐两篇文章 http://xelatex.github.io/2015/11/15/Battlefield-Calico-Flannel-Weave-and ...

  3. HTML——meta标签

    <meta> 元素可提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词. <meta> 标签位于文档的头部,不包含任何内容.&l ...

  4. AngularJs之ng-repeat的用法

    可参考文章:http://blog.csdn.net/renfufei/article/details/43061877 ng-repeat信息展示的核心: [1]异步读取数据源 works,见代码一 ...

  5. Wince下sqlce数据库开发(一)

    对于Wince下的sqlce数据库虽然很多人在用,但在我查找资料时,却发现资料是多么的匮乏,在此对自己这几天的了解做个简单介绍,希望对大家能有所帮助! 本文的最后附有所使用到的sqlce在wince下 ...

  6. win8内置管理员用户无法激活此应用

    在运行中输入:“gpedit.msc”,就会启动组策略编辑器, 计算机配置 --> Windows设置 --> 安全设置 --> 本地策略 -->  安全选项  ::::  用 ...

  7. ABAP 内表的行列转换-发货通知单-打印到Excel里-NEW-(以运单号为单位显示ALV然后保存输出)

    *********************************************************************** * Title           : ZSDF003  ...

  8. codeforces 425B Sereja and Table (枚举、位图)

    输入n*m的01矩阵.以及k. n,m<=100,k<=10 问修改至多k个,使得矩阵内的各连通块(连着的0或1构成连通块)都是矩形,且不含另外的数字(边界为0(1)的矩形内不含1(0)) ...

  9. VC++ 模块与资源分离

    在一些开发过程中,需要模块支持中英文语言切换,比较好的实现方式是从模块中将资源分离出来,做成中英文两个资源dll,根据需要加载不同的dll从而实现切换不同的语言显示. 新建一个资源dll文件,选择Wi ...

  10. C Primer Plus_第四章_字符串和格式化输入输出_编程练习

    Practice 1.输入名字和姓氏,以"名字,姓氏"的格式输出打印. #include int main(void) { char name[20]; char family[2 ...