繁体   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