Coldfusion JSON包含特殊字符
我的JSON包含特殊字符,如:新行、双引号等 我正在使用Coldfusion服务器端脚本创建JSON。但在特殊字符的情况下,由于JSON格式错误,我得到了错误。在这种情况下我该怎么办Coldfusion JSON包含特殊字符,coldfusion,fullcalendar,coldfusion-9,Coldfusion,Fullcalendar,Coldfusion 9,我的JSON包含特殊字符,如:新行、双引号等 我正在使用Coldfusion服务器端脚本创建JSON。但在特殊字符的情况下,由于JSON格式错误,我得到了错误。在这种情况下我该怎么办 <cfoutput> [ <cfset loopIndex=0> <cfloop query="qEvents"> <cfif loopIndex NEQ 0>,</cfif> <cfif is_a
<cfoutput>
[
<cfset loopIndex=0>
<cfloop query="qEvents">
<cfif loopIndex NEQ 0>,</cfif>
<cfif is_allday EQ 1>
<cfset isallDayEvent = "true">
<cfelse>
<cfset isallDayEvent = "false">
</cfif>
{
"title": "#title#",
"start": "#DateFormat(start_date_time,'mm/dd/yyyy')# #TimeFormat(start_date_time,'hh:mm tt')#",
"end": "#DateFormat(end_date_time,'mm/dd/yyyy')# #TimeFormat(end_date_time,'hh:mm tt')#",
"allDay": #isallDayEvent#,
"eventID": "#event_id#",
"duration": "#duration#",
"note": "#note#",
"location": "#location#"
}
<cfset loopIndex=loopIndex+1>
</cfloop>
]
</cfoutput>
[
,
{
“头衔”:“头衔”,
“开始”:“#日期格式(开始日期时间,'mm/dd/yyyy')#时间格式(开始日期时间,'hh:mm tt')#”,
“结束”:“#日期格式(结束日期时间,'mm/dd/yyyy')#时间格式(结束日期时间,'hh:mm tt')#”,
“全天”:“全天活动”,
“事件id”:“事件id”,
“持续时间”:“持续时间”,
“注”:“注”,
“位置”:“位置”
}
]
与手工编写JSON不同,您应该生成一个结构数组,然后使用serializeJSON()
将其转换为有效的JSON字符串:
<cfset thisArrayBecomesJSON = [] />
<cfloop query="qEvents">
<cfif is_allday EQ 1>
<cfset isAllDayEvent = "true" />
<cfelse>
<cfset isAllDayEvent = "false" />
</cfif>
<cfset thisEvent = {
'title' = title,
'start' = dateFormat( start_date_time, 'mm/dd/yyyy' ) & timeFormat( start_date_time, 'hh:mm tt' ),
'end' = dateFormat( end_date_time, 'mm/dd/yyyy' ) & timeFormat( end_date_time, 'hh:mm tt' ),
'allDay' = isAllDayEvent,
'eventID' = event_id,
'duration' = duration,
'note' = note,
'location' = location
} />
<cfset arrayAppend( thisArrayBecomesJSON, thisEvent ) />
</cfloop>
<cfset myJSON = serializeJSON( thisArrayBecomesJSON ) />
<cfoutput>#myJSON#</cfoutput>
#myJSON#
这是未经测试的,但我认为它应该可以正常工作-可能存在一些语法错误。您使用的是“serailizeJSON()”函数吗?或者您是否依赖CFC的返回格式?JSON是如何生成Adil的?@以上感谢您的回复。我已经编辑了这篇文章并添加了代码。我知道我犯了一些错误。请让我知道这样做的正确方法是什么?没有语法错误。但是现在我无法验证JSON。您使用什么来验证JSON?你能给出一个生成JSON字符串的例子吗?我使用以下两个URL来验证我的JSON:项目在我的本地机器上,JSON非常大。将近1000张唱片。无法在此处共享。如果使用jQuery,则可以使用
jQuery.parseJSON(jsonString)
解析JSON字符串。如果没有,您可以使用JSON.parse(jsonString)
,但我不确定它是否跨浏览器兼容。JSON中的日期定义不明确。因此,您可能需要根据消费者的期望设置日期格式。