如何将Ajax与Symfony2集成

前端之家收集整理的这篇文章主要介绍了如何将Ajax与Symfony2集成前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在看简单的教程/关于ajax在symfony2的例子,初学者?

我有这些例子:

> city.PHPhttp://pastebin.com/Qm8LS5kh
> ajax_req.js:http://pastebin.com/UqJMad24
> index.html:http://pastebin.com/H1err4Yh

如何将它们放入Symfony2应用程序?

这很容易。
我将演示如何通过3步骤在Symfony2中进行AJAX调用。对于以下示例,假设使用jQuery库。

>定义必须处理AJAX调用的操作的路由。例如。

AcmeHomeBundle_ajax_update_mydata:
  pattern:  /update/data/from/ajax/call
  defaults: { _controller: AcmeHomeBundle:MyAjax:updateData }

>从Home bundle定义MyAjax控制器中的操作。例如。

public function updateDataAction(){
  $request = $this->container->get('request');        
  $data1 = $request->query->get('data1');
  $data2 = $request->query->get('data2');
  ...
  //handle data
  ...
  //prepare the response,e.g.
  $response = array("code" => 100,"success" => true);
  //you can return result as JSON
  return new Response(json_encode($response)); 
}

>在您的Twig模板中准备您的AJAX电话,例如:

function aButtonPressed(){
    $.post('{{path('AcmeHomeBundle_ajax_update_mydata')}}',{data1: 'mydata1',data2:'mydata2'},function(response){
                    if(response.code == 100 && response.success){//dummy check
                      //do something
                    }

    },"json");    
}

$(document).ready(function() {     
  $('button').on('click',function(){aButtonPressed();});
});

您可以使用其他AJAX调用更改示例。

猜你在找的Ajax相关文章