使用Coldfusion创建嵌套JSON结构
我已经将CF结构等转换为JSON有一段时间了,一切都很好。特别是Coldbox使这变得非常容易 但是,我目前正在使用jQuery数据表,需要以下面的格式将jSON传递给它 我从一组对象开始 我只希望每个对象中的某些属性进入最终的JSON字符串 我在兜圈子,可能把我的数据转换成这种JSON格式太复杂了。有人能帮我吗,或者建议一个简单的方法,我也许能做到这一点 同样值得一提的是,我正在coldbox中构建这个。Coldfusion 9使用Coldfusion创建嵌套JSON结构,json,coldfusion,coldfusion-9,coldbox,Json,Coldfusion,Coldfusion 9,Coldbox,我已经将CF结构等转换为JSON有一段时间了,一切都很好。特别是Coldbox使这变得非常容易 但是,我目前正在使用jQuery数据表,需要以下面的格式将jSON传递给它 我从一组对象开始 我只希望每个对象中的某些属性进入最终的JSON字符串 我在兜圈子,可能把我的数据转换成这种JSON格式太复杂了。有人能帮我吗,或者建议一个简单的方法,我也许能做到这一点 同样值得一提的是,我正在coldbox中构建这个。Coldfusion 9 { "aaData": [ [ "Test1", "test@t
{ "aaData": [ [ "Test1", "test@test1", "444444444", "<i class=''icon-pencil icon-large'' data-id=''s1''></i>" ],[ "Test2", "test@test2", "555555555", "<i class=''icon-pencil icon-large'' data-id=''s2''></i>" ],[ "Test3", "test@test3", "666666666", "<i class=''icon-pencil icon-large'' data-id=''s3''></i>" ] ]}
{“aaData”:[[“Test1”test@test1“,”444“,”],[“测试2”,“test@test2“,”555“,”],[”测试3“,”test@test3", "666666666", "" ] ]}
非常感谢
======================================================
下面是我们需要的游戏代码:
var dataStruct = structNew();
var dataArray = arrayNew(1);
var subsArray = arrayNew(1);
var subs = prc.org.getSubscribers();
for (i=1; i<=arrayLen(subs); i++){
arrayAppend(subsArray,"#subs[i].getName()#");
arrayAppend(subsArray,"#subs[i].getEmail()#");
arrayAppend(subsArray,"#subs[i].getMobile()#");
arrayAppend(subsArray,"<i class='icon-pencil icon-large' data-id='s#subs[i].getID()#'></i>");
arrayAppend(dataArray,subsArray);
arrayClear(subsArray);
};
structInsert(dataStruct,'aaData',dataArray);
event.renderData('json',dataStruct);
var dataStruct=structNew();
var dataArray=arrayNew(1);
var subsArray=arrayNew(1);
var subs=prc.org.getSubscribers();
对于(i=1;i好的,那么你有了一个包含对象的数组,对象包含了你需要在这个JSONed数组中结束的所有属性,是吗
这样做:
create a new array
loop over the array of objects
create a struct
put all the values from each object you need to go into the JSON; be mindful to use associative array notation when setting the keys, to perserve the case of the keys
append the struct to the new array
/loop
serializeJson the new array
我认为没有更简单的方法了。什么版本的ColdFusion?谢谢Cameron。这就是我要做的,但是输出JSON上的数据不是“名称”:“值”。它只是一个值列表。序列化结构将把键和值都放入JSON中。在这种情况下,只需将“创建结构”步骤替换为“创建数组”,从原始对象中提取数组的每个索引的值,以确保值的顺序正确。