【问题标题】:Get ajax data in symfony controller在 symfony 控制器中获取 ajax 数据
【发布时间】:2016-03-29 17:36:03
【问题描述】:

我正在使用来自 dhtmlx 调度程序的库,我的 start_date 来自 event,它只是一个具有 start_date 节点的 xml 文件。我可以做一个alert(star_date) 并返回Wed Dec 23 2015 09:47:00 GMT+0100 (CET)

我想从 ajax 请求中检索数据 (start_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 是空的。

如何查看开始日期?

【问题讨论】:

  • 根据需要使用 dataType
  • 显示代码究竟是什么start_date
  • start_date 是包含对象还是字符串?
  • start_date 是一个字符串
  • 我使用了dataType : "json",但现在请求没有成功

标签: php jquery ajax symfony


【解决方案1】:

问题很可能是在构建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_date',你可能想发送变量值data: { id : id, start_date : start_date}

【讨论】:

  • 谢谢,但我收到错误警报。如果我使用dataType : "text" 没有错误,但我的控制器中仍然没有任何数据。我觉得我的window.location.href 不好。因为就在被重定向之前,我可以在分析器中将AJAX_REQUEST 变为红色。
  • 你好,我通过改变事情让它工作:没有报价前ID和开始日期;并且重定向是错误的,因为我试图将数据发送到一个路由然后移动到这个路由。但是当数据没有存储在重定向路由中时(因为已经发送),我尝试将数据从$startDate = ($request->request->get('start_date'); 保存到 .txt 文件中,并且值被正确保存。现在我面临另一个问题:我无法从 ajax 请求中持久化实体。如果我做不到,我会做研究并提出另一个问题。谢谢,圣诞快乐。
猜你喜欢
  • 2018-01-23
  • 2017-08-06
  • 1970-01-01
  • 2013-05-08
  • 1970-01-01
  • 1970-01-01
  • 2021-10-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多