3

動的ソースで jquery ui オートコンプリートを使用します。

 $( "#shop-id" ).autocomplete({
        source: function(request, response){
            $.ajax({
                type: "GET",
                url: "/app_dev.php/ticket/get_sids/",
                data: {
                    term: request.term
                },
                success: function(data){
                    console.log(data);
                }
            })
        }
    });

生成される URL は次のようになります。

/app_dev.php/ticket/get_sids/?term=22

symfony 2 ルーティングでそれを処理するにはどうすればよいですか? 私はいくつかのことを試しましたが、疑問符がボトルネックのようです.

何か案は?

4

2 に答える 2

7

term=22GETクエリパラメータ—リクエストに付属するパラメータです。symfonyはルートをチェックしている間これを使用しないので、のルートを見つけようとします/ticket/get_sids/。このURLを処理するコントローラーを定義すると、次のtermようなパラメーターを取得できます。

$term = $request->query->get('term');
于 2012-09-17T14:38:04.293 に答える
0

次のようなルートを定義する必要があります。

ajax_ticket_autocomplete_search:
    pattern:  /ticket/get_sids.php
    defaults: { _controller: "YOURBundle:Ticket:ajaxSearchTicket" }

そしてあなたのチケットコントローラーで:

public function ajaxSearchTicketAction()
    {

        $request = $this->getRequest();
        $term_autocomplete=$request->query->get('term');
    ... 

このようにして、クエリ文字列によって用語値にアクセスできます。

于 2012-10-04T12:12:41.323 に答える