CFC JSON输出 – 显示查询结果的问题

这是一个很长的问题 – 有很多细节 – 所以首先为此道歉 – 但我不确定如何以更简洁的方式提出这个问题。

我有两个CFC,都设计为从查询返回JSON,然后我使用jquery来显示结果。

第一个CFC看起来像这样:

      

调用此方法并使用以下内容显示结果:

 $.getJSON("getRequests.cfc?method=getRequests&returnformat=json&queryFormat=column",{"status":1}, function(res,code) { if(res.ROWCOUNT > 0){ for(var i=0; i<res.ROWCOUNT; i++) { s = "

" + res.DATA.TITLE[i] + "

Panel
RFQ ID

" + "

" + /*res.DATA.PANEL[i] +*/"
" + res.DATA.JOB_ID[i] + "

" + "

Responses" + /*res.DATA.RESPONSES +*/ "
Due " + res.DATA.REQUIRED_DATE[i] + "

" + "
"; }; } else { var s = "Sorry, nothing matched your search."; } $("#results").html(s); },"json"); })

一切正常。

第二个CFC看起来像这样:

         

此CFC被调用,数据显示如下:

 $(".alphaindex").click(function(e) { var item = $(this).attr("title"); if(item == "")return $.getJSON("getContacts.cfc?method=getContacts&returnformat=json",{"alpha":item}, function(res,code){ if(res.ROWCOUNT > 0){ for(var i=0; i<res.ROWCOUNT; i++) { s += "

" + res.DATA.CONTACTFIRSTNAME[i] + res.DATA.CONTACTLASTNAME[i] + "

" + "

" + res.DATA.CONTACTEMAIL[i] + "

" + "

" + res.DATA.CONTACTMOBILE[i] + "


" }; s += ""; } else { var s = "Sorry, nothing matched your search."; } $("#results").html(s); },"json"); e.preventDefault(); })

这是返回JSON数据头 – 但不是数据。 我不知道有什么区别,或者我在第二个例子中出错了。

任何建议表示赞赏 – 再次就问题的长度道歉。

西蒙

这是一个远景,但您的函数名称是“getContacts”,并且可能基于您的代码片段,您的查询称为“getContacts”。

我想知道那里是否发生了一些奇怪的碰撞。 尝试重命名您的查询(以及更改“返回”行)以完全独特的东西(确保VAR也适用它!)

编辑:等等 – 你的第一个CFC也是这样做的,而且它有效。 嗯,无论如何都要试试,谁知道……

得到它 – 正如预期的那样(并且几乎一如既往)我错过了一些简单的东西。 我需要在第二个示例中添加&queryformat = column。

 $.getJSON("getContacts.cfc?method=getContacts&returnformat=json&queryFormat=column" 

感谢Edward的帮助!

西蒙