Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Ajax url parametetr using Twig path

i have a problem in my twig view when i pass params in the ajax url path, logically twig is executed before javascript so he didnt recognize the input value passed as parameter. Is there a solution to do this without passing the param in data ?

 <script type="text/javascript" charset="UTF-8">
(function($) {

    var $projectField = $('#project-field-container');

    $projectField.on('change', function() {
        var id_project = $(this).val();
        if('' != id_project) {
            $.ajax({
                url: {{ path('project_field', {'id_project': id_project})}},
                success: function (data) {
                    var content = $('select', data.contentHTML).html();
                    $projectField.html(content).trigger('change');
                }
            });
        } else {

        }
    });
})(jQuery);

like image 484
Rim Avatar asked Jan 31 '26 11:01

Rim


1 Answers

You should use the FOSJsRoutingBundle for this. It has an interface that is similar or maybe even identical to the Twig {{ path() }} and allows you to only expose a small part of the routes to Javascript.

Your js implementation then will be able to generate routes as you can see in the documentation.

like image 78
Rvanlaak Avatar answered Feb 03 '26 04:02

Rvanlaak