Zend Framework :: Ajax请求

时间:2010-03-25 08:56:45

标签: ajax zend-framework

我正在寻找任何可以在Zend中促进Ajax的库(如果存在的话)。也有人可以对ZF附带的内置Ajax支持有所了解。 我尝试使用谷歌搜索,但对结果不满意。

-DevD

4 个答案:

答案 0 :(得分:2)

尽管JQuery与Zend Framework完美集成。 / extras文件夹中有一个libray。

有AjaxRequests的帮助程序,不同的View Widgets,以及从Google / AOL CDN加载库。

有关更多信息,我建议访问Zend Framework文档:

ZendX Jquery

答案 1 :(得分:1)

Dojo随Zend Framework一起提供,它们可以促进ajax样式调用。

如果您查看Dojo ToolKit以了解有关该框架可为您提供的内容的更多信息,请参阅ajax调用(搜索xhrGet和xhrPost)

另外,如果您在框架文档中查看以帮助您在Zend Framework项目中使用dojo。 Zend_Dojo

希望这有帮助

答案 2 :(得分:1)

如果您对YUI JS框架有任何专业知识,那么通过Selector查询监听事件并进行Ajax调用并收集元素非常容易,然后对它们应用CSS规则(如果这是你想要的)。您可以查看本教程以了解有关Zend-YUI关系的更多信息

http://ciitronian.com/blog/programming/javascript/creating-ajax-based-form-zend-framework-yui/

答案 3 :(得分:0)

看看这个Zend Framwork 2模块。

如果您没有应用程序,可以使用Wasabilib Skeleton https://github.com/WasabiLib/wasabilib_zf2_skeleton_application。它在适当的地方提供所有必要的资产。

如果您已有应用程序,则只应克隆模块而不是完整骨架。

最低要求:jQuery,ZF2

  1. 将模块添加到application.config.php。
  2. 在layout.phtml的头部jquery之后包含wasabilib.min.js
  3. 工作原理 在你的.phtml文件中,你有一个这样的表格:

    <form id="simpleForm" class="ajax_element" action="simpleFormExample" method="POST">
    <input type="text" name="written_text">
    <input type="submit" value="try it">
    </form>
    

    你的phtml中的任何其他地方都可以放置一个显示响应的元素。

    在Controller中使用以下方法:

    public function simpleFormExampleAction(){
        $postArray = $this->getRequest()->getPost();
        $input = $postArray['written_text'];
        $response = new Response(new InnerHtml("#element_simple_form","Server     Response: ".$input));
        return $this->getResponse()->setContent($response);
    }
    

    表单有一个&#34; ajax_element&#34;这将说库将使用xmlhttp请求完成请求。 如果您不向请求元素提供ID ,则无效。因此表单具有ID&#34; simpleForm&#34;。行动是&#34;路径/到/控制器&#34;就像正常的请求一样。

    在控制器操作中,将实例化一个新的WasabiLib \ Ajax \ Response对象。 InnerHtml类用于替换,前置和附加html或普通文本到选择器。 在这种情况下,选择器是ID&#34; element_simple_form&#34;。 InnerHtml类的第一个参数是选择器。 确保您编写#yourElementId或.yourClassSelector 。对于ID&#34;#&#34;并为班级选择者&#34;。&#34;

    第二个参数是您要填充此元素的文本。

    响应对象可以处理更多响应,您可以使用

    添加这些响应
    $response->add($anotherResponseType);
    

    可能的响应类型列表在其主页wasabilib.org上

    构建模块以非常简单的方式处理ajax请求响应。一旦了解了行为,就可以处理几乎所有实际的ajax需求。