我对ajax请求非常陌生。我正在尝试使用日期范围过滤器来显示两个日期之间的信息,为此我正在使用此Calendar。
这是日历输入:
<input type="text" name="daterange"/>
在Js中,我使用以下代码:
$(document).ready(function() {
$('input[name="daterange"]').daterangepicker(
{
"alwaysShowCalendars": true,
"cancelClass": "btn-primary",
});
$('.applyBtn').click(function(){
startDate = $('input[name="daterange"]').data('daterangepicker').startDate.format('DD.MM.YYYY');
endDate = $('input[name="daterange"]').data('daterangepicker').endDate.format('DD.MM.YYYY');
var url = Routing.generate('calender-posts-filter', { start: startDate, end: endDate });
$.ajax({
url: url,
type: 'GET',
});
console.log(url);
});
});
这是我在Symfony中的功能
public function filterAction($start, $end){
$posts = $this->getDoctrine()->getRepository(Post::class)->getFilteredPosts($start, $end);
return $this->render('app/posts-date-filtered.html.twig', ['posts' => $posts]);
}
当我选择两个日期并按apply Btn时,我得到了从jsRouting生成的正确日期,并且我将其发布在控制台中,但随后没有其他任何反应。如果Ajax请求在此处不起作用,如何使用新的URL刷新页面。