PHP--------TP中的ajax请求

以jQuery中的ajax为例:

(1)引入jQuery

通过模板替换表示路径,我们可以自定义模板替换变量(在config中定义)

/*自定义模板替换标签*/

'TMPL_PARSE_STRING' =>array(

'__JS__'=>'/Think_php/Public/script'

),

(2)发送ajax请求(跟jquery中的ajax一样8步)

(3)ajax回应(ajaxReturn()方法)

     该方法会将控制器回应的数据进行json编码

      ajaxReturn('返回的数据','提示信息','操作状态')

      请求成功返回1,失败返回0

    ajaxReturn() ,控制器给我们返回数据进行json格式的编码

需要保证客户端接收的时候也要保证接受的数据格式是json格式的

dataType: json

默认就是json格式的

例:用户名的验证用ajax请求

public function ab(){
  $this->display();
  }
public function ajax(){
  //echo $_POST['username'];
  $user_model=M('User');
  $pass=$user_model->field('dept_id')->where("user_name='".$_POST['username']."'")->select();
  if($pass[0]['dept_id']!=$_POST['password']){
    //ajax回应(ajaxReturn()方法,该方法会将控制器回应的数据进行json编码,ajaxReturn('返回的数据','提示信息','操作状态'),请求成功返回1,失败返回0
   $this->ajaxReturn(array('wrong'),'failed',0);
   //$this->ajaxReturn('成功','success',1);
   //echo 'error';
   }else{
    //echo 'success';
    $this->ajaxReturn(array('right'),'success',1);
    //$this->ajaxReturn('失败','error',0);

}
  }

tpl:

<form action="" method="post">
用户名:<input type="text" name="username" id="username"><br />

密码:<input type="password" name="password" id='password'><br />
<input type="button"  id="sub" value="提交">
<script type="text/JavaScript" src="__JS__/jquery-1.4.2.min.js"></script>

<script>
$(function(){
 $("#sub").click(function(){
  
  $.ajax({
   type:'POST',
   data:'username='+$("#username").val()+'&password='+$("#password").val(),
   url: '__URL__/ajax',
   async:true,
     dataType:'text',
   success:function(msg){
    alert(msg.data);<!--接收ajax函数返回的数据-->
    }
   
   })  
  })
 })
</script>

PHP--------TP中的ajax请求的更多相关文章

  1. javascrpt 中的Ajax请求

    回顾下javascript中的Ajax请求,写一个小例子: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN& ...

  2. ASP.NET Core Razor中处理Ajax请求

    如何ASP.NET Core Razor中处理Ajax请求 在ASP.NET Core Razor(以下简称Razor)刚出来的时候,看了一下官方的文档,一直没怎么用过.今天闲来无事,准备用Rozor ...

  3. HighCharts中的Ajax请求的2D折线图

    HighCharts中的Ajax请求的2D折线图 设计源码: <!DOCTYPE html> <html> <head> <meta charset=&quo ...

  4. 关于JQuery中的ajax请求或者post请求的回调方法中的操作执行或者变量修改没反映的问题

    前段时间做一个项目,而项目中所有的请求都要用jquery 中的ajax请求或者post请求,但是开始处理一些简单操作还好,但是自己写了一些验证就出现问题了,比如表单提交的时候,要验证帐号的唯一性,所以 ...

  5. [Web 前端] 如何在React中做Ajax 请求?

    cp from : https://segmentfault.com/a/1190000007564792 如何在React中做Ajax 请求? 首先:React本身没有独有的获取数据的方式.实际上, ...

  6. Struts2 在登录拦截器中对ajax请求的处理

    前言: 由于ajax请求不像http请求,可以直接进行页面跳转,你返回的所有东西,ajax都只会识别为一个字符串. 之前尝试的方法是在拦截器中返回一个标识给ajax,然后再在每一个ajax请求成功之后 ...

  7. React 中的 AJAX 请求:获取数据的方法

    React 中的 AJAX 请求:获取数据的方法 React 只是使用 props 和 state 两处的数据进行组件渲染. 因此,想要使用来自服务端的数据,必须将数据放入组件的 props 或 st ...

  8. SpringBoot入门07-Thymeleaf中显示ajax请求到的数据

    Thymeleaf中显示ajax请求所需依赖 <!--所需依赖--><dependency> <groupId>org.springframework.boot&l ...

  9. Java-如何挖取某个网站中的ajax请求信息

    通常情况,通过网络爬虫挖取到的基本为网页静态内容,而动态ajax取数的内容是我个人暂时不知如何一次性把网站中的ajax获取 这里介绍的是某个网站中的某一个ajax多某个table刷新,期数据,并提供其 ...

随机推荐

  1. C语言经典例题100

    C语言经典例题100 来源 http://www.fishc.com 适合初学者 ----------------------------------------------------------- ...

  2. C# 版本的冒泡排序,包括该死的控制台读取

    期末出成绩了,绩点被数分拉下来太多,虽然我很想不在意,但是还是受不了 学了两天的JAVA了,无爱,还是喜欢C#,喜欢VS 一直学一下控制台读取来着,但是C#控制台读取真的很麻烦 using Syste ...

  3. Oracle查询表空间使用情况

    --查询表空间使用情况 SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", ...

  4. STM32——DMA接收和发送的实现

    最近写程序,需要一段一段数据的接收,再通过其他串口发送出去. 老司机们建议用DMA通信,以节约CPU资源.然后,我听了,发现挺好用的.特此,把自己写的代码贴上了. DMA发送接收的步骤如下: 1.初始 ...

  5. Read excel and put cell data into HashMap

    //Read excel row by row, put cell name and cell value to a map for each row. HashMap getExpectedResu ...

  6. readelf与动态库

    使用arm-linux-gcc编译的可执行文件可能会无法在开发板上执行,并提示:-/bin/sh xxx not found 解决办法: 在主机上使用readelf -d xxx 来查看该程序所需要的 ...

  7. loadrunner四大部分

    loadrunner主要分一下四部分 1.VuGen  主要进行录制,回放,参数化,脚本修改,可以对脚本进行recording options,General options,runtime opti ...

  8. STL库中的正态分布函数

    在设计抽奖一类程序中,有时会需要一种概率“有较大可能获得一个普通结果,有较小可能获得一个糟糕或极好的结果”,这就可以用正态分布函数来获得这样一个结果. STL中已经提供了一系列随机分布的函数,包括正态 ...

  9. C#窗体无法接受Keydown事件

    问题一描述:当新建一个窗体时,添加KeyDown事件后,会正常处理,但是当添加有控件时,比如Button,TextBox,不会触发窗体的KeyDown事件,也没有调用KeyDown事件的处理程序. 原 ...

  10. 团队开发——冲刺2.g

    冲刺阶段二(第七天) 1.昨天做了什么? 编写软件计划书第三阶段:整理用户体验建议:据用户对界面的要求,把小球改头换面,借鉴超级马里奥叔叔的道具们. 2.今天准备做什么? 最后的美工,统一整合: 测试 ...