如何在Coldfusion数组/对象中存储名称 - 值对?

时间:2012-04-29 13:37:01

标签: jquery arrays object coldfusion multidimensional-array

说我有一个错误消息列表,如下所示:

fieldname    message
--------------------
zip          "please enter your zip code"
city         "please enter your city"
...

我需要将这些名称 - 值对存储在Coldfusion * 8 *数组/对象中,以使它们可以被客户端验证函数(Jquery)访问。

在Jquery中我通过id引用错误消息,所以我需要存储它们。

这个Jquery的等价物是什么:

 var onErr = [ ["zip","please enter your zip code"], ["city", "please enter your city"]  ]
在Coldfusion中

我想做这样的事情:

<cfset onErr = createObject("component","errorMsg.cfc")>

errorMsg.cfc

<cfset onErr.zip = "please enter your zip code">
<cfset onErr.city = "please enter your city">
...
// then serialize this for pickup by Jquery validation handler

但不确定这是否是最好,最方便的解决方案。我也看了一下数组,但是我只能存储ID或消息,可以吗?多维数组怎么样?

感谢您的帮助!

修改 谢谢你的帮助。最后摆弄了我的方式(到下一个障碍: - )。

以下是它的工作原理(=我可以JSONserialize来对象并在Jquery中解析):

<cfset allErrMsgs=ArrayNew(2)>
<cfset allErrMsgs[1][1] = "firma">
<cfset allErrMsgs[1][2] = tx_validate_firma>
<cfset allErrMsgs[2][1] = "re_firma">
<cfset allErrMsgs[2][2] = tx_validate_firma>
... 

因此,每当我收到新的错误消息时,我只需要在错误日志中将它们附加到此处。我在Session Start上创建此日志作为组件,并在用户更改语言时创建:

再次感谢。

1 个答案:

答案 0 :(得分:3)

你想要一个结构数组(地图或其他语言的对象):

 var onErr = [ {"zip":"please enter your zip code"}, {"city":"please enter your city"}  ]

对于序列化,请使用serializeJSON(),如下所示:

serializeJSON(onErr)

或者,如果您通过远程访问函数set returnformat =“json”

来执行此操作