1

JQuery でオートコンプリート機能を実装したい Spring アプリがあります。ローカル配列がある場合、完全に機能し、入力ボックスに値を入力している間にリストをフィルタリングします。データ ソースを使用するように変更すると、リストが返されますが、入力ボックスのエントリに基づいてリストがフィルター処理されません。

Jquery UI チュートリアルを何度も読み、http://viralpatel.net/blogs/spring-3-mvc-autocomplete-json-tutorial/ および http://blog.m1key.me/2011 にある例を使用しまし。 /10/jquery-ui-autocomplete-spring-mvc.htmlしかし、ローカル配列の値が自動的にフィルタリングされるのに、返されたリストがフィルタリングされないのはなぜですか?

クエリで自分自身をフィルタリングすることで機能させることができますが、ローカル配列でフィルタリングするため、db から返されるリストに対しても同じことが行われると考えました。

私は何か間違ったことをしていますか?データベースからのリストは、ローカル配列と同じ方法でフィルタリングする必要がありますか?

4

1 に答える 1

0
@RequestMapping(value = "/getProductAutoCompleteList.do", method = RequestMethod.GET, headers="Accept=*/*")
    public @ResponseBody List<String> getProductAutoComplete(@RequestParam("term") String prodName, HttpServletResponse response){
        logger.info("getProductAutoCompleteList called with parameter: " + prodName);
        response.setStatus(HttpServletResponse.SC_OK);
        final List<String> productList = ProductSearchHelper.getProductAutoCompleteList(prodName);


        response.setContentType("application/json");
        return productList;
    }

確認してください

  1. response.setStatus(HttpServletResponse.SC_OK); を指定します。
  2. オプション、setContentType を application/json として、@ResponseBody アノテーションを持ち、Spring MVC は、Jackson JSON プロセッサ上に構築された MappingJacksonHttpMessageConverter を呼び出します。クラスパスに Jackson が存在する mvc:annotation-driven 構成要素を使用すると、この実装は自動的に有効になります。
于 2013-01-31T15:54:07.207 に答える