文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>集成Ajax

集成Ajax

时间:2010-03-31  来源:bing_fox

<?php
1. 简介
不刷新整个页面而向服务器请求新数据
2. 库的选择
Dojo
jQuery
3. 交互
.1 客户端
  .1 读取
  .2 发送
.2 服务端
  .1 读取
  $_GET['VarName']; $_POST['VarName'];
  .2 写回
4. zend 与 jquery
.1 客户端
$(window).load(function(){
 alert("Hello world");
 $.post("index/ajax", {Action:"get",Name:"jack"}, function (data, textStatus){
  //返回的 data 可以是 xmlDoc, jsonObj, html, text, 等等.
  //this; // 在这里this指向的是Ajax请求的选项配置信息,请参考下图
  alert(data);
  alert(textStatus);//请求状态:success,error等等。                                  当然这里捕捉不到error,因为error的时候根本不会运行该回调函数
  alert(this.type);
  $('#container').html(data).css("color", "red");
   });
});
//特别注意:"index/ajax",这是control与action的url,是相对路径,也可写成绝对路径:/zf2/public/index/ajax,其中/是
从apache的DocumentRoot开始的
.2服务器端
在相应的action中echo回的内容加上相应的view的内容就是返回的内容.如不需要view的内容,可以用
$this->renderScript("blank.phtml");此空白view,blank.phtml应该放在views/script下
或者取消view的显示
$this->_helper->viewRenderer->setNoRender(); 
.3 数据包装
 .1 text
 $str = "Hello ".$name."!";
 echo $str;
 .2 html/xml
 dataType: "xml"
 .3 json
 dataType: "json"
 
  $req = $this->getRequest();
     $objRes = null;
     $objRes->name = $req->getParam('name');
     $objRes->age = $req->getParam('age');
     $objRes->email = $req->getParam('email');
  $this->_helper->json($objRes);
//将$objRes这个对象包装成json格式,在js方面以data.name, data.age, data.email来读取 
/*
 如果布局是打开(enabled)的,则关闭(disable)它。
如果视图解析器(ViewRenderer)是打开的,则关闭它。 设置 'Content-Type' 响应头为 'application/json'。 缺省地,不需要等待动作执行完成,立即返回响应。
*/
4. 数据解包
 .1 text
 data
 .2 html/xml
 dataType: "xml"
 .3 json
 dataType: "json"
 data.name, data.age, data.email;
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载