[英]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.