在jquery中的twig无法读取jquery变量

sha*_*nex 2 jquery symfony twig

我正在尝试使用jQuery帖子但是我在使用twig语法的路径部分有问题.这是代码:

messageSender.click(function(e) {
            e.preventDefault();
            var threadId     = $(this).find('a').data('id');

            $.post("{{ path('messages_view', {id: "+threadId+"}) }}", function(data, status) {
                console.log(data);
            });
        });
Run Code Online (Sandbox Code Playgroud)

这不会得到它的值threadId,而是将文字""+'threadId'+""存储到路径中的id变量.

doy*_*y44 6

您的功能在客户端(js)
,您的路径在服务器端(twig)

这样就行不通了.

要解决此问题,您可以使用FOSJsRoutingBundle(doc).

使用您的代码,您可以拥有类似的东西:

messageSender.click(function(e) {
    e.preventDefault();
    var threadId     = $(this).find('a').data('id');
    var url = Routing.generate('messages_view', { id: threadId});

    $.post(url, function(data, status) {
        console.log(data);
    });
});
Run Code Online (Sandbox Code Playgroud)