欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【PHP中使用ASP.NET AJAX】,下面是详细的分享!
PHP中使用ASP.NET AJAX
借助于CodePlex上开源项目PHP for Microsoft AJAX Library的帮助,我们已经可以在PHP上使用ASP.NET AJAX的很多核心功能了。
下载安装
PHP for Microsoft AJAX Library目前仅仅处于Alpha阶段,想实际使用似乎还早了点,只能尝鲜了。
预先需求有PHP 5.2版本,且必须安装了php-json模块。
安装方法:
下载PHP for Microsoft AJAX Library并解压缩
下载Microsoft AJAX Library(http://ajax.asp.net)
在PHP Web Service代码中include一下MSAjaxService.php。
在调用该Web Service的页面中,引入MicrosoftAjax.js文件。
下面来看一个“经典”的场景:调用服务器端方法取得复杂类型。
编写Service文件
新建一个php文件,命名为EmployeeService.php。首先写上这一句,include必要的支持代码:
require_once 'MSAjaxService.php';
然后定义一个Employee类。四个属性一目了然,不用多说:
class Employee{ public $Id; public $Name; public $Email; public $Salary; function __construct($id, $name, $email, $salary) { $this->Id=$id; $this->Name=$name; $this->Email=$email; $this->Salary=$salary; }}
接下来是EmployeeService类,继承与MSAjaxService.php中的MSAjaxService基类。其中定义一个方法,用来返回一个Employee对象:
class EmployeeService extends MSAjaxService{ function GetEmployee() {return new Employee(12345, "Dflying Chen", "Dflying@some.com", 1000); }}
然后新建一个EmployeeService的实例,并且调用基类的ProcessRequest()方法,处理该请求:
$theService=new EmployeeService();$theService->ProcessRequest();
大功告成!
编写调用页面
新建一个页面,php或者html均可——程序比较简单。这回我们没了ScriptManager的帮助,引入ASP.NET AJAX客户端脚本文件以及上面的这个Service只能靠手工了。注意EmployeeService.php/js可以得到该Service的客户端代理,和ASP.NET平台上的语法一样:
<head> <title>ASP.NET AJAX On PHP Demotitle><script type="text/javascript" src=http://www.chinaz.com/program/2008/1020/"MicrosoftAjaxLibrary/MicrosoftAjax.js"><script> "text/javascript" src=http://www.chinaz.com/program/2008/1020/"EmployeeService.php/js">script>head>
程序的UI部分很简单,按钮用来触发异步调用,
用来显示调用结果:
<body> <input id="btnGetEmployee" type="button" value="Get an Employee" onclick="return btnGetEmployee_onclick()" /> <div id="resultDiv"> div>body>
在该按钮的click事件处理函数中,调用该Service,语法也和ASP.NET AJAX中一致,非常方便:
function btnGetEmployee_onclick(){ EmployeeService.GetEmployee(onSucceeded);}
在回调函数中,把得到的Employee对象显示到resultDiv中:
function onSucceeded(result){ var sb=new Sys.StringBuilder("Server returns an Employee object: "); sb.append("Id: " + result.Id + ""); sb.append("Name: " + result.Name + ""); sb.append("Email: " + result.Email + ""); sb.append("Salary: " + result.Salary + ""); $get("resultDiv").innerHTML=sb.toString();}
大功告成!
示例程序界面
第一次访问

点击Get an Employee按钮后

以上所分享的是关于PHP中使用ASP.NET AJAX,下面是编辑为你推荐的有价值的用户互动:
相关问题:关于网页aspjspphp和ajax到底有什么区别
答:jsp,php,asp是运行在服务器端的语言 它们负责把页面组织好 然后传送给客户端的浏览器 而浏览器在页面上面注册用户或填表啥的操作后 就需要提交并刷新网站 读取注册后的页面 而Ajax是客户端脚本语言 主要依靠javascript来实现 作用是 当客户端浏... >>详细
相关问题:asp.net中怎么使用ajax?添加控件以后要怎样啊?
答:asp.net有系统封装好的ajax控件,如updatepanel,在页面中下面加上 ,然后你就可以在页面中像panel一样用updatepanel了,包含在其中的控件提交的后台事件都不会刷新 >>详细
相关问题:Ajax和jsp,php,asp有何区别和关系
答:jsp,php,asp是运行在服务器端的语言 它们负责把页面组织好 然后传送给客户端的浏览器 而浏览器在页面上面注册用户或填表啥的操作后 就需要提交并刷新网站 读取注册后的页面 而Ajax是客户端脚本语言 主要依靠javascript来实现 作用是 当客户端浏... >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
