簡體   English   中英

Symfony2和AJAX

[英]Symfony2 and AJAX

我想知道如何在Symfony2中執行異步操作而不重新加載頁面。 我在“書”和“菜譜”上找不到任何內容。 (我發現關於hinclude.js的只有兩句話?)

我想到的是:發送表單而不重新加載頁面(保存到db),重新加載頁面的一部分等。

控制器功能的粗略模板。
它包括檢查ajax並僅返回JsonResponse。

public function ajaxAction(Request $request)
{
    if (! $request->isXmlHttpRequest()) {
        throw new \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException();
    }

    // do whatever
    $rtn = array('foo' => 'bar');

    return new \Symfony\Component\HttpFoundation\JsonResponse($rtn);
}

要顯示的標准ajax代碼;

<div id="my-foo">bob</div>
<script type="text/javascript">
var jqxhr = $.ajax({
                url: '{{ path('route_to_controller_function') }}', // path should be in your routes.php
                type: 'post',
                data: {param1: 'foo'}, // if required
            })
            .done(function(data) {
                // do whatever you want
                // for example write foo to div
                $('#my-foo').html(data.foo);
            })
            .fail(function() {
                alert( "error" );
            });
</script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM