0

有人可以给我推荐一个使用 Ajax 和 Zend 1 的很好的初学者教程吗json 响应的文件,其他的则没有。我对 Zend Framework 1 的所有这些 ajax 调用感到非常困惑。将不胜感激。

4

1 回答 1

2

嗯,确实有一些基本的东西。

  1. 获取您的数据(来自数据库、文件、代码内数组等)
  2. 获取控制器助手
  3. 发送 JSON 响应

就是这样。好吧,不完全是,但基本上是的!如果您有以下数据$data

$this->_helper->json($data, true);

将返回 JSON 响应。文档在这里

现在还有一个Context Switch和 AjaxContentHelper 的概念:

ContextSwitch 操作帮助器旨在促进根据请求返回不同的响应格式。AjaxContext 帮助器是 ContextSwitch 的一个特殊版本,它有助于返回对 XmlHttpRequests 的响应。

要启用其中任何一个,您必须在控制器中提供有关哪些操作可以响应哪些上下文的提示。如果传入请求指示给定操作的有效上下文,则助手将:

  • 禁用布局(如果启用)。
  • 设置备用视图后缀,实际上需要单独的上下文视图脚本。
  • 为所需的上下文发送适当的响应标头。
  • 可选地,调用指定的回调来设置上下文和/或执行后处理。

像这样的东西:

$contextSwitch = $this->_helper->getHelper('contextSwitch');
$contextSwitch->setDefaultContext('json');
$contextSwitch->addActionContext('index', array('xml','json'))->initContext();
$contextSwitch->addActionContext('get', array('xml','json'))->initContext();
$contextSwitch->addActionContext('post', array('xml','json'))->initContext();
$contextSwitch->addActionContext('put', array('xml','json'))->initContext();
$contextSwitch->addActionContext('delete', array('xml','json'))->initContext();
$contextSwitch->addActionContext('head', array('xml','json'))->initContext();

我认为你真的不需要教程。您所需要的只是对 Web 内部工作原理和阅读Zend 文档有很好的基础知识。无论如何,这里有一些关于 ContextSwitch 的教程

于 2013-09-24T14:00:22.743 回答