PHP--------TP中的ajax請求


剛剛在查資料的時候看到一篇對自己今后有的文章,是關於TP框架的,將就吧它摘下來了。

 

以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>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM