php - 为 Zend Framework 应用程序构建 AJAX 的最佳方式

标签 php javascript jquery ajax zend-framework

我想拥有一个 AJAX 模块服务层,其中包含与我的模型交互的 Controller 和操作。简单,但不是很可扩展并且会违反 DRY。如果我更改某些流程的逻辑,我将不得不编辑 AJAX Controller 和普通 Controller 。

所以理想情况下,我会为 javascript 和非 javascript 用户加载完全相同的操作。我考虑过可能会检查 $_POST['ajax'],如果已设置,我会为数据加载不同的 (json'y) View 。想知道如何/一个好的方法来做到这一点(我想象的前端 Controller 插件?)或者是否有人可以向我指出一个 UP TO DATE 教程,该教程描述了构建更大的 ajax 应用程序的真正好方法。

最佳答案

您实际上可以使用请求对象来确定请求是否通过 ajax 发生,例如:

// from your controller
if($this->getRequest()->isXmlHttpRequest()) {
    // an ajax request, do something special (e.g. render partial view)
} else {
   // render entire view
}

这基本上是测试 x-requested-with header (它不是总是存在,取决于 JS 库等)。请参阅(在“检测 ajax 请求”的标题下):

http://framework.zend.com/manual/en/zend.controller.request.html

关于php - 为 Zend Framework 应用程序构建 AJAX 的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2926111/

相关文章:

php - JavaScript:如何创建 JSONP?

php - 数据不粘在用户个人资料上

php - 登录/注册 PHP 表单

javascript - 告诉我如何在退出应用程序后保留日期选择器自定义设置

php - 单个 `when` 子句与多个 `then` 子句

javascript - jquery具有相同id的按钮的点击事件

如果 60 秒不活动,javascript 单击按钮

javascript - jQuery 防止 anchor 击

javascript - 在文本框中显示 Json 对象

javascript - 从 HTML 操作 javascript 数组