ColdFusion:QUERY到JSON

时间:2013-01-09 09:55:18

标签: jquery json coldfusion

我有一个查询,我想将其转换为JSON对象。

在我的查询中,有一个字符串(例如"0000""0001")。不幸的是,在调用SerializeJSON后,字符串是一个数字(01,...)。

使用jQuery调用函数时出错,因为JSON对象无效。引号失败:

{
   "COLUMNS": ["Test1","Test2","Test3"],
   "DATA": [ ["AA ",0000,"testestest"] ]
}

我已经尝试了很多东西。你能救我吗?

这是我的代码:

<cffunction name="getData" access="remote" returntype="any" returnformat="JSON">
    SQL....

    <cfset result = SerializeJSON(result)>

    <cfreturn result>
</cffunction>

3 个答案:

答案 0 :(得分:5)

这是一个已在Adobe ColdFusion中注册的ColdFusion 9错误(错误ID 83638)。您可以将ColdFusion升级到ColdFusion 9.0.1以解决此问题。您只需要安装热修复程序。

访问以下网址以安装Hotfix。

http://helpx.adobe.com/coldfusion/kb/cumulative-hotfix-1-chf1-coldfusion.html

此修复程序已添加到ColdFusion 10中。

答案 1 :(得分:3)

此功能可能会有所帮助:http://www.davidosomething.com/blog/fix-cf-serializejson-number-conversion

或者,使用此方法: http://www.ghidinelli.com/2008/12/19/tricking-serializejson-to-treat-numbers-as-strings

您可以修改查询,以便选择列并同时附加一些前导空格,例如

<cfquery>
  SELECT ' ' + Test2 AS yourColumn

答案 2 :(得分:3)

尽管不完全相同,但是我要求将a post here序列化查询序列化为json与AngularJS一起使用可能会有所帮助