2011-03-26 56 views
0

正如你可能从以下文章中知道我是新来的Zend框架和网络编程,所以任何帮助,非常感谢。寻找zend框架的链接ajax表刷新

我想要做的是让我的用户可以搜索存储在数据库中的客户端的页面,并通过表格返回结果。我知道如何在传统的形式做到这一点 - >后 - >结果页面的方式,但我想实现如下:

  1. 有两个或多个道场自动完成组合框,用户可以输入搜索条件为(我在网络上找到了这个例子,应该可以实现这个)

  2. 使用输入到查询中的文本查看数据库中的clients表。

  3. 将结果返回到同一页面的表格中,而不必重定向,并且如果可能的话,表格会在用户键入组合框时更新结果。 例如,如果用户键入“FA”例如该表将具有 “法雷尔 ‘费根’ ‘法雷利’ 随着用户继续键入例如‘远’的表将具有 ‘法雷尔’ ‘法雷利’

正如你可能已经猜到了,我需要有部分和第三部分,我已经尝试使用搜索关键字刷新和自动完成帮助,但我一直无法找到任何接近我所需要的。

任何人都可以提供链接教程/如何做的例子thi s在Zend框架中。我知道代码有很多要求,但是如果有人感到慷慨的话,请继续。 以防万一它有所作为我使用Doctrine ORM来处理我的模型。

在此先感谢您的答复。

格雷厄姆

回答

1

的基本要点是这个...

  1. 使用AjaxContext帮手,添加html上下文你的行动。
  2. 将你的表标记为.ajax.phtml文件,并用render呼叫

<?php echo $this->render('controller-name/action-name.ajax.phtml') ?> 
  1. 添加您的JavaScript事件处理程序的页面替换它在普通视图。请求AJAX内容时,请在请求中添加format=html参数。这将触发AjaxContext帮助程序,只返回可以注入页面的表格标记。

这种方法最好的部分是它会优雅地退化。如果JavaScript被禁用或不可用,该页面将恢复为旧学校表单 - >后 - >结果方法。


看一看我的AJAX分页张贴在这里的一些指针 - http://blog.philipbrown.id.au/2011/03/awesome-pagination-with-zf-paginator-ajaxcontext-and-the-html5-history-api/

它使用在你想使用你的搜索条件,所以应该作为一个基本参考做同样的方式page参数。