当前位置: 首页 > 面试题库 >

如何将Ajax与Symfony2集成

余弘毅
2023-03-14
问题内容

我正在寻找有关symfony2中有关ajax的简单教程/示例,供初学者使用?

我有这些例子:

  • city.php:http://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 }
  • 在捆绑软件中的MyAjax控制器中定义操作Home。例如
        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)); 
    }      
  • AJAXTwig模板中准备呼叫,例如:
        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调用来更改示例



 类似资料:
  • 问题内容: 我是Django的新手,而Ajax的新手。我正在一个需要将两者整合的项目中。我相信我理解它们背后的原理,但是并没有找到对两者的良好解释。 有人可以给我快速解释一下如何将两者集成在一起来更改代码库吗? 例如,我仍然可以将Ajax与一起使用,还是必须随着Ajax的使用而改变我的回答?如果是这样,请您举例说明如何更改请求的响应?如果有什么不同,我返回的数据是JSON。 问题答案: 即使这不完

  • 我对姜戈是个新手,对阿贾克斯也是个新手。我正在做一个项目,我需要整合这两个。我相信,我理解了它们背后的原理,但没有找到一个很好的解释两者在一起。 谁能给我一个快速的解释,代码库必须如何改变与他们两个集成在一起? 例如,我还能在Ajax中使用吗,或者我的响应必须随着Ajax的使用而改变吗?如果是,请提供一个对请求的答复必须如何改变的例子?如果有任何区别,我返回的数据是JSON。

  • 我正试图通过OAuth2访问Google Analytics API。 我所做的: > 打开开发人员控制台 创建新的客户端ID 生成p12密钥 复制服务器上的密钥 打开谷歌分析页面 从生成的客户端ID添加电子邮件,类似于:xxxxxxxx-xxxxxxxxxxxxxxx@developer.gserviceaccount.com 给予此电子邮件阅读和分析权限 然后当我回到开发者控制台 重新检查Go

  • 问题内容: 我是Django的新手,而Ajax的新手。我正在一个需要将两者整合的项目中。我相信我理解它们背后的原理,但是并没有找到对两者的良好解释。 有人可以给我快速解释一下如何将两者集成在一起来更改代码库吗? 例如,我仍然可以将与一起使用,还是必须随着Ajax的使用而改变我的回答?如果是这样,请你举例说明如何更改请求的响应?如果有什么不同,我返回的数据是JSON。 问题答案: 即使这不完全符合S

  • 问题内容: 我有一个示例,尝试使用Symfony2和FOSUserBundle创建AJAX登录。我设置我自己和在我的文件。 这是课程: 这对于处理成功和失败的AJAX登录尝试都非常有用。但是,启用后-我无法通过标准表单POST方法(非AJAX)登录。我收到以下错误: 我希望自己的重写和重写仅对XmlHttpRequests(AJAX请求)执行,如果没有,则将执行交还给原始处理程序。 有没有办法做到

  • 目前,我的应用程序使用SpringMVC进行所有控制器映射。我正在尝试实现一个tinyMCE拼写检查,它包括一个Servlet,我不确定如何在不修改该文件本身的情况下正确集成该Servlet。我想避免修改,这样如果我们以后有新版本,我们就可以了。 Servlet看起来像...