我正在寻找任何可以在Zend中促进Ajax的库(如果存在的话)。也有人可以对ZF附带的内置Ajax支持有所了解。 我尝试使用谷歌搜索,但对结果不满意。
-DevD
答案 0 :(得分:2)
尽管JQuery与Zend Framework完美集成。 / extras文件夹中有一个libray。
有AjaxRequests的帮助程序,不同的View Widgets,以及从Google / AOL CDN加载库。
有关更多信息,我建议访问Zend Framework文档:
答案 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
工作原理 在你的.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需求。