Php 在symfony控制器中获取ajax数据

Php 在symfony控制器中获取ajax数据,php,jquery,ajax,symfony,Php,Jquery,Ajax,Symfony,我使用的是dhtmlx调度程序中的一个库,我的开始日期来自一个事件,它只是一个包含开始日期节点的xml文件。我可以发出警报(星号)并返回Wed Dec 23 2015 09:47:00 GMT+0100(CET) 我想从ajax请求中检索数据(start\u date): scheduler.attachEvent("onClick", function (id, e){ var event = scheduler.getEvent(id); var start_date =

我使用的是dhtmlx调度程序中的一个库,我的
开始日期
来自一个
事件
,它只是一个包含
开始日期
节点的xml文件。我可以发出
警报(星号)
并返回
Wed Dec 23 2015 09:47:00 GMT+0100(CET)

我想从ajax请求中检索数据(
start\u date
):

scheduler.attachEvent("onClick", function (id, e){
var event = scheduler.getEvent(id);
var start_date = event.start_date;

$.ajax({
    url: Routing.generate('admin_event_edit', {id : id}),
    type: "POST",
    data: { id : 'id', start_date : 'start_date'},
    dataType : "json",
    success: function(data) {
        var route = Routing.generate('admin_event_edit', {id : id});
        window.location.href = route;
    },
    error: function () {
        alert('Error');
       }
});
在我的控制器中,我正在执行以下操作:

$startDate = ($request->request->get('start_date');
但是我的
$startDate
是空的


如何访问开始日期?

在构建json数据时,最有可能的问题是使用单引号而不是双引号,请尝试这样使用:

$.ajax({
    url: Routing.generate('admin_event_edit', {id : id}),
    type: "POST",
    data: { id : "id", start_date : "start_date"},
    dataType : "json",
    success: function(data) {
        var route = Routing.generate('admin_event_edit', {id : id});
        window.location.href = route;
    },
    error: function () {
        alert('Error');
    }
});

但在这里,您还试图提交简单字符串
'id'
'start\u date'
,您可能希望发送变量值
数据:{id:id,start\u date:start\u date}

在构建json数据时,最有可能的问题是使用单引号而不是双引号,请尝试这样使用:

$.ajax({
    url: Routing.generate('admin_event_edit', {id : id}),
    type: "POST",
    data: { id : "id", start_date : "start_date"},
    dataType : "json",
    success: function(data) {
        var route = Routing.generate('admin_event_edit', {id : id});
        window.location.href = route;
    },
    error: function () {
        alert('Error');
    }
});

但在这里,您还试图提交简单字符串
'id'
'start\u date'
,您可能希望发送变量值
数据:{id:id,start\u date:start\u date}

随心所欲地使用数据类型显示代码什么是
start\u date
start\u date
包含对象还是字符串?
start\u date
是使用的字符串
数据类型:“json”
但是现在请求没有按照您的要求成功使用数据类型显示代码什么是
start\u date
确实
start\u date
包含对象还是字符串?
start\u date
是我使用的字符串
数据类型:“json”
但是现在请求没有成功谢谢,但是我收到了一个错误警报。如果我使用
数据类型:“text”
没有错误,但我的控制器中仍然没有任何数据。我觉得我的
window.location.href
不好。因为就在被重定向之前,我可以在分析器中看到
AJAX\u请求变为红色。您好,我通过改变一些东西来工作:没有quote-fore-id和start\u-date;重定向是错误的,因为我试图将数据发送到一个路由,然后移动到这个路由。但是当数据没有存储在重定向路由中时(因为已经发送),我尝试从
$startDate=($request->request->get('start\u date')保存数据;
保存到.txt文件中,并且正确保存了值。现在我面临另一个问题:我无法从ajax请求中持久化实体。如果我做不到,我将进行研究并创建另一个问题。谢谢,圣诞快乐。谢谢,但我收到一个错误警报。如果我使用
数据类型:“text”
没有错误,但我的控件中仍然没有任何数据。我认为我的
窗口.位置.href
不好。因为就在重定向之前,我可以在探查器中看到
AJAX\u请求变为红色。您好,我通过更改以下内容来工作:id和开始日期没有引号;重定向是错误的因为我尝试将数据发送到一个路由,然后移动到此路由。但是当数据没有存储在重定向路由中时(因为已经发送),我尝试从
$startDate=($request->request->get('start_date')保存数据;
保存到.txt文件中,并且正确保存了值。现在我面临另一个问题:我无法从ajax请求中持久化实体。如果我无法持久化实体,我将进行研究并创建另一个问题。谢谢,圣诞快乐。