如何在flex中快速搜索?

时间:2010-09-24 16:22:53

标签: flex flash http search

我使用http服务在数据网格中使用基于字符的搜索名称。所以我使用了文本框和数据网格,fcomptxt是文本框id fComptxt.addEventListener(Event.CHANGE,applyFilter);

    public function applyFilter(e : Event):void {

      CompanyViewBean.companyViewBean = new CompanyViewBean();
          CompanyViewBean.companyViewBean.subAction
    = new XML("<actionContext><actionName>SearchCompany</actionName></actionContext>"); var nameSearch:String = fComptxt.text; CompanyViewBean.companyViewBean.companyName=<name>{nameSearch}</name>;    
xmlGeneration()

        }

在xmlgeneration函数中,我使用http服务向服务器发送请求。但我的澄清是

  1. 如果他们快速键入然后获取错误(http错误)
  2. 是否有可能以任何其他方式实施快速搜索
  3. 我使用了键盘向下事件和键盘向上事件,然后没有使用相同的问题。

1 个答案:

答案 0 :(得分:2)

如果您可以一次加载所有数据,那么您可以使用ArrayCollection的排序功能来过滤用户输入的数据。它应该很快。

但是,如果你想在每次击键后ping数据库,那么你经常会遇到服务器和客户端之间的延迟时间与用户输入速度相比的问题。

我可以看到您可能会调查的两个选项:

  1. 您可以在每次击键后禁用文本输入,直到从服务器返回数据。
  2. 每次击键后,你都可以 取消“进程中”远程 在开始新的请求之前请求。