Tag: symfony

根据另一个选择更新一个选择

可能重复: 如何在更改第一个下拉列表后从数据库加载第二个下拉列表 嘿,我有一个表格,里面有两个选择下拉列表。 第一个选择填充了用户的投资组合,第二个选项需要填充投资组合。 我获得了登录用户的所有投资组合,并使用这些投资组合填充第一个选择我想在第一个选择的基础上填充第二个选择组,例如,如果用户选择portfolio_1,portfolio_1中的所有组应该在第二个选择框中加载。 第一个选择投资组合是: Select Portfolio {% for portfolio in portfolios %} {{ portfolio.portfolioName }} {% endfor %} 我理解的是我需要调用ajax函数onchange of first select in ajax我需要发送选定的投资组合ID并查找具有该id的所有组,然后返回所有这些组并仅更新第二个选择框与那些组, 我不知道如何用我将获得的组填充第二个选择 有任何想法吗? 谢谢

无法使用jquery获取attr id

我正在使用http://www.symfocal.com/进行symfony应用程序(2.3) 我尝试改变日历的显示方式但是我在使用jquery时有些麻烦: 这是关于我的问题的修改代码的一部分。 带有jquery的twig文件: … jQuery(document).ready(function() { var cal1 = $(‘#cal1’); var cal2 = $(‘#cal2’); function fillCalendar(mois, annee, cal) { $(cal).css(‘display’, ‘none’); $(cal).find(‘a’).removeClass().unbind(); {% if admin == false %} $(cal).find(‘a’).click(function(e){e.preventDefault();}); {% endif %} … var id = $(cal).attr(‘id’); $.post(url,{ month: mois, year: annee, },function(data){ if(data.responseCode==200 ) { var days_previous_month=data.days_previous_month; var nb_days_prev=data.nb_days_prev; $(‘#’+id+’_title’).html(data.current_month); var count=1; while(count<43) […]

如何让jquery返回csrf?

阅读这个Symfony CSRF和Ajax它只返回csrf,但是如何将jQuery返回到表单中? 编辑:我的代码如下: $formFactory = Forms::createFormFactoryBuilder() ->addExtension(new CsrfExtension($csrfManager)) ->getFormFactory(); $defaultFormTheme = ‘bootstrap_3_layout.html.twig’; $vendorDir = realpath(__DIR__.’/../vendor’); $appVariableReflection = new \ReflectionClass(‘\Symfony\Bridge\Twig\AppVariable’); $vendorTwigBridgeDir = dirname($appVariableReflection->getFileName()); $viewsDir = realpath(‘twig’); $twig = new Twig_Environment(new Twig_Loader_Filesystem(array( $viewsDir, $vendorTwigBridgeDir.’/Resources/views/Form’, ))); $formEngine = new TwigRendererEngine(array($defaultFormTheme), $twig); $twig->addRuntimeLoader(new \Twig_FactoryRuntimeLoader(array( TwigRenderer::class => function () use ($formEngine, $csrfManager) { return new TwigRenderer($formEngine, $csrfManager); }, ))); $twig->addExtension(new […]

Symfony / Jquery对象集合

我在Symfony有一个网络应用程序。 当我有一个对象集合(用户有很多地址)时,我需要实现JavaScript / jQuery方法,让用户添加他拥有的地址数量( https://symfony.com/doc/current/form/form_collections .html )。 问题是我想用每个标签和每个输入标签包装一个特定的div,如 但经过几次尝试,我不能那样做。 你能帮助我吗 ? 我的代码: data-prototype=”…”的{{ form_widget(parent_form.addresses.vars.prototype)|e }}生成此html: Street1 Street2 Number Box Locality 1080 – Molenbeek-Saint-Jean – BELGIUM 1060 – Saint-Gilles – BELGIUM 1050 – Ixelles – BELGIUM Address type Home Work Holidays Other 然后Symfony文档建议这段代码添加一个地址: var collectionHolder; // Set up an “add address” link var addAddressLink = $(‘Add […]

jQuery文件上传(Blue imp)Symfony 2 405方法不允许

我在symfony 2项目中使用此捆绑包进行多文件上传: https://github.com/1up-lab/OneupUploaderBundle 与此插件结合使用: http://blueimp.github.io/jQuery-File-Upload/ 上传本身正在运行,但我也在我的控制台中收到此错误: GET http://localhost/vdvinfra/web/app_dev.php/_uploader/gallery/upload 405 (Method Not Allowed) 665832b_jquery-2.0.3.min_1.js:6 x.support.cors.e.crossDomain.send665832b_jquery-2.0.3.min_1.js:6 x.extend.ajax7b52311_main_9.js:61 (anonymous function)665832b_jquery-2.0.3.min_1.js:4 l665832b_jquery-2.0.3.min_1.js:4 c.fireWith665832b_jquery-2.0.3.min_1.js:4 x.extend.ready665832b_jquery-2.0.3.min_1.js:4 S 因为插件不能正常工作。 (不显示进度条或消息)。 该软件包在其文档中说我需要在我的routing.yml中创建一个这样的路由: oneup_uploader: resource: . type: uploader config.yml: oneup_uploader: mappings: gallery: frontend: blueimp 我的简单输入字段: 我的javascript: $(document).ready(function () { $(function () { $(‘#fileupload’).fileupload({ dataType: ‘json’, done: function (e, data) { $.each(data.result, function (index, file) […]

Symfony路由ajax get方法

我通过ajax GET参数传递,我的url看起来像: example.com/autocamplete?term=string 我为此添加路线: autocomplete: path: /autocomplete?term={term} defaults: { _controller: CatalogWebBundle:Default:autocomplete } 但是我的路线有问题,因为我收到了错误: GET http://127.0.0.1:8000/autocomplete?term=sdfsd 500 (Internal Server Error) 如何重写我的路线到ajax得到拍拍? JS是: $(function() { //autocomplete $(“#search”).autocomplete({ source: “\/autocomplete”, minLength: 1 }); });

FOSUserBundle(登录/注册)+ AJAX + Symfony2

我在Symfony2网站上安装了FOSUserBundle ,并且我覆盖了登录页面和注册页面。 它工作得很好,但现在,我有另一个问题: 弹出一个AJAX检查登录和注册部分,使用不同的路由,控制器等。 怎么做最好的方法? 我的弹出窗口是FOSUserBundle的login.html.twig页面的简单引导模式,这里是登录部分的modal-body的代码(我将使用寄存器部分的寄存器forms): {% trans_default_domain ‘FOSUserBundle’ %} {% block fos_user_content %} {{ ‘security.login.username’|trans }} {{ ‘security.login.password’|trans }} {% endblock fos_user_content %} 我已经在StackOverflow和其他网站上搜索过,但没有找到我想要的好答案。 谢谢。

Symfony2:如何使用Ajax强制下载多个图像在一个zip文件中

这是我的AJAX请求: function DownloadZip() { var searchIDs = $(“#image_id:checked”).map(function(){ return $(this).val(); }).get(); $.ajax( { type:’POST’, url: $(‘#admin_product_zip’).text(), data: {searchIDs:searchIDs}, success: function(response) { } } ); return false; } 这是我的控制器方法,我得到产品ID并从数据库中获取这些id,获取正确的图像路径: public function zipMultipleDownload($data){ foreach($data as $product_ind) { $product = $this->repo->find(3); $images=$product->getColorImagesPaths(); $itemImages=$product->getItemImagesPaths(); $archive_file_name =$product->getName().$product->getId().’.zip’; //print_r($itemImages); //return new response(‘test’); } $this->zipFilesAndDownload($images,$archive_file_name,$itemImages); //return json_encode($itemImages); } // Function for dowloading […]

是否可以通过搜索字段使用`switch_user`?

我正在尝试填充要在搜索框中使用的值,以便超级用户可以模拟其他用户 。 但是,我遇到了下面列出的问题,我不确定是否有统一的解决方案或至少是一种“正确”的方法来处理它: 如何传递搜索字符串以及脚本的用户名值 如何重新加载当前页面但补充路径?_switch_user=jsmith (例如) 如果超级用户在模拟一个用户(例如jsmith )和另一个普通用户之间切换,我会收到一个错误: 您已经切换到“jsmith”用户。 我的搜索表单: Submit 剧本: 这是我的基础树枝模板(因为表单在所有页面的导航栏中)。 我实际使用的代码是var searchnames = [“Smith, John”,…但是我会以某种方式需要通过选择的用户名(例如jsmith )来重新加载同一页面但是使用?_switch_user=jsmith作为参数: $(function() { var searchnames = [ “Smith, John” => “jsmith”, “Doe, Jane” => “jdoe1990”, ]; $( “#search-names” ).autocomplete({ source: searchnames }); }); 我的想法是从我的UserRepository传递所有名称/用户名的列表,并用twig填充脚本。 除此之外,我不知道从哪里开始传递参数?_switch_user=

Symfony2表单事件侦听器和数据转换器错误无法实例化接口Doctrine \ … \ ObjectManager

我正在研究一种Symfony 2.3表单,该表单要求字段仅在“创建新”模式下可用。 该字段是多对一关系中的链接,我已设法通过使用jQuery AutoComplete来更改下拉列表,以便通过FormEvents::PRE_SET_DATA事件使用,但是要转换的FormEvents::PRE_SUBMIT提供给对象的ID需要Doctrine ObjectManager。 这转为一个接口并抛出‘无法实例化接口Doctrine \ Common \ Persistence \ ObjectManager’ 。 我已经看过以下类似的问题和文档( 表单事件 , 表单事件下拉列表 , 主义数据转换器 , 动态表单修改 )但是接近结束(并且是php和symfony的新手)我希望不要重新写这篇文章。 您可以在我的Event Listener和Data Transformer类下面找到: namespace XXXXXXXBundle\Form\EventListener; use Doctrine\Common\Persistence\ObjectManager; use Symfony\Component\Form\FormEvents; use Symfony\Component\EventDispatcher\EventSubscriberInterface; use XXXXXXXXXXXXXBundle\Form\DataTransformer\rneToEcoleTransformer; class AddFieldSubscriber implements EventSubscriberInterface { private $manager; public static function getSubscribedEvents() { // Tells the dispatcher that you want to […]