【问题标题】:Zend Framework 1 AjaxZend 框架 1 Ajax
【发布时间】:2013-09-22 10:42:08
【问题描述】:

有人可以给我推荐一个在 Zend 1 中使用 Ajax 的很好的初学者教程。我一直在网上搜索其中的一些教程,但找不到可以理解的。有些人说你必须创建一个 . json.phtml 文件用于 json 响应,其他的则没有。我对 Zend Framework 1 的所有这些 ajax 调用感到非常困惑。非常感谢。

【问题讨论】:

    标签: ajax zend-framework layout frameworks


    【解决方案1】:

    确实有一些基本的东西。

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

    就是这样。好吧,不完全是,但基本上是的! 前提是你有$data中的数据:

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

    将返回 JSON 响应。文档是here

    现在还有一个 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 Documentation。不管怎样,这里有一些tutorial on ContextSwitch

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-17
      • 1970-01-01
      • 2011-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多