从通过ajax请求传递的jquery对象获取特定值

从通过ajax请求传递的jquery对象获取特定值,jquery,json,ajax,object,coldfusion,Jquery,Json,Ajax,Object,Coldfusion,所以我现在有一个设置,当用户单击一个链接时,链接的ID通过AJAX发送到一个coldfusion页面,该页面使用它进行查询并返回一个对象 jquery函数如下所示: $(".thelink").click(function(){ var link_id = $(this).attr("id"); var postData ={ link_id: link_id, } $.ajax({ type: "po

所以我现在有一个设置,当用户单击一个链接时,链接的ID通过AJAX发送到一个coldfusion页面,该页面使用它进行查询并返回一个对象

jquery函数如下所示:

$(".thelink").click(function(){

    var link_id = $(this).attr("id");

    var postData ={
        link_id: link_id,
        }

        $.ajax({
            type: "post",
            url: "includes/query.cfm",
            contentType: "application/json",
            data:JSON.stringify(postData),
            datatype: "json",
            success: function(data){
                $("#derpaderp").html(data.DATA.NAME);
            }
        })
})
<CFOUTPUT>
    <cfset object0 = RemoveChars(#SerializeJSON(query1, true)#, 1, 2) >
    <cfset object1 = RemoveChars(#SerializeJSON(query2, true)#, 1, 2) >

    #object0#
    #object1#
</CFOUTPUT>
它将数据发送到执行查询的CFM文件,并生成一行数据。然后我使用

<CFOUTPUT>#SerializeJSON(myQuery, true)#</CFOUTPUT>

基于Vlad对原始问题的回答,但它抛出了一个错误。

在成功函数中,您可以添加函数。可以使用console.log检查所需的其他值

$.ajax({
  type: "post",
  url: "includes/query.cfm",
  contentType: "application/json",
  data:JSON.stringify(postData),
  datatype: "json",
  success: function(data){
    var pdata = $.parseJSON(data);
    console.log(pdata.DATA.VISIBLE_URL)

    //$("#derpaderp").html(pdata.DATA.VISIBLE_URL);
  }
})

好的,我为我的后续问题找到了解决方案

实际上,我是通过AJAX函数将两个单独的对象发送回来的。像这样:

{"COLUMNS": x, "ROWCOUNT":Y, "DATA:Z}
{"COLUMNS": x, "ROWCOUNT":Y, "DATA:Z}
这导致了一个分析错误,因为有2个对象。我通过创建一个要发回的对象来解决这个问题

<cfset object0 = RemoveChars(#SerializeJSON(query1, true)#, 1, 2) >
<cfset object1 = RemoveChars(#SerializeJSON(query2, true)#, 1, 2) >

<CFOUTPUT>
    {"FIRST":[#object0#], "SECOND":[#object1#]}
</CFOUTPUT>
这将成功地记录第一次查询中“VISIBLE_URL”的值


谢谢大家

如果将
console.log(data)
放在success函数中,会得到什么输出?这很有效!我可以发誓我也试过了:P谢谢弗拉德!我编辑了原始问题并进行了跟进!我尝试在响应中添加另一个查询,但它似乎破坏了代码,很高兴你找到了答案。我想建议您可以在查询中使用内部连接,这样您只有一个查询,并且只返回1组json。
<cfset object0 = RemoveChars(#SerializeJSON(query1, true)#, 1, 2) >
<cfset object1 = RemoveChars(#SerializeJSON(query2, true)#, 1, 2) >

<CFOUTPUT>
    {"FIRST":[#object0#], "SECOND":[#object1#]}
</CFOUTPUT>
$.ajax({
    type: "post",
    url: "includes/query.cfm",
    contentType: "application/json",
    data:JSON.stringify(postData),
    datatype: "json",
    success: function(data){
        var pdata = $.parseJSON(data);
        var object1_data = pdata.FIRST[0];
        var object2_data = pdata.SECOND[0];

        console.log(object1_data.DATA.VISIBLE_URL)

    }
})