【问题标题】:jquery cfajaxproxy fullcalendar pass start and end datesjquery cfajaxproxy fullcalendar 传递开始和结束日期
【发布时间】:2013-02-07 22:16:14
【问题描述】:

我使用的是 FullCalendar (1.5.2)、jQuery (1.8.1),但使用的是较旧的 ColdFusion 8。

我遇到的问题是如何使用代理正确地将当前日历月的开始日期和结束日期传递给 cfc。

显示日历,但不显示 json 结果。我怀疑应该如何将开始日期和结束日期传递给代理条目。

这里是代码sn-p。

<cfajaxproxy cfc="xxx.ScheduleEvents" jsclassname = "schEvents">
<script type="text/javascript">
  var date = new Date();
  var d = date.getDate();
  var m = date.getMonth();
  var y = date.getFullYear();
  var jEvents = new schEvents();

  jQuery('#calendar').fullCalendar({
    header:  {
        left:  'prev,next today',
        center:  'title',
        right:  'month, basicWeek, basicDay'
     },
     editable:  true,
     events:  jEvents.getEvents()
      });
   });
</script>

我已经测试了这个函数,它使用 cfinvoke 和 createobject 工作,以正确的 json 格式返回完整日历的正确信息。我唯一的问题是在这方面如何将 start 和 end 传递给 cfc。我是把它作为参数放在 () 中的 getEvents 还是什么?

任何帮助将不胜感激。

【问题讨论】:

  • 如果 getEvents 函数期待这些参数,那么我会做的第一件事就是尝试你想知道的事情。
  • 您无权访问 xxx.ScheduleEvents.cfc 以确定它可以采用哪些参数?
  • 我可以访问 cfc 和方法。他们采用应该来自 FullCalendar 的开始和结束日期,但是,我很难将开始和结束参数传递给 cfc。我能够在测试页面上使用 cfinvoke 和 createObject 测试 cfc。

标签: jquery coldfusion fullcalendar cfc cfajaxproxy


【解决方案1】:

我没有使用过 cfajaxproxy,但是当您序列化为 JSON 时,您需要注意区分大小写。

<cfset event.id = 4 />
<cfset event["title"] = "something" />

一旦被序列化为 JSON,它就变成了 event.ID 和 event.title,即在结构上使用点表示法,所有的键最终都是大写的。

我当然记得在使用该插件时遇到过这个问题,我还记得必须将 javaCast 某些内容转换为 int,但我不知道该插件是否仍然如此。

【讨论】:

  • 返回的 JSON 是合规的,并且符合 fullcalendar 的预期。我怀疑问题在于如何将开始和结束参数传递给代理方法。
  • 我使用 cfinvoke 返回 json 格式。不确定格式是否导致问题。此外,我已经看到您可以在 url 中手动将参数传递给 cfc 的位置。这意味着我实际上输入了cfc信息(http://..../mycfc.cfc?method=myMethod&argument1=abc&argument2=xyz。来自cfinvoke的JSON结果将列/数据对封装在双引号中,除了ID和allDay 项目。这是问题所在吗?
  • ~Bump~ 关于调用函数的任何建议。我创建了一个带有警报的按钮来调用该函数并传递数据。但是,仍然想知道如何在 fullcalendar 中将其作为函数调用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-23
  • 2015-10-19
  • 2012-08-19
  • 1970-01-01
  • 1970-01-01
  • 2022-01-23
相关资源
最近更新 更多