使用 Twig 路径的 Ajax url 参数
当我在 ajax url 路径中传递参数时,我的树枝视图出现问题,从逻辑上讲,twig 在 javascript 之前执行,因此他无法识别作为参数传递的输入值.有没有在 data 中传递参数的情况下执行此操作的解决方案?
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);
推荐答案
你应该使用 FOSJsRoutingBundle这.它的接口与 Twig {{ path() }}
相似甚至可能相同,并且只允许您将一小部分路由公开给 Javascript.
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.
然后您的 js 实现将能够生成路由 如您在文档中所见.
Your js implementation then will be able to generate routes as you can see in the documentation.
相关文章