如何使用 2 列输出 CFC 查询

How to ouput CFC query with 2 columns

我正在对 returns 2 列数据的 CFC 进行 ajax 调用。

AJAX 呼叫:

<script>
        function  getPSAstatus() {
            //populate psa
        $.ajax({
        
            dataType: 'json',
            data:  {
                        customer_id: $('#customer_id').val()
                    },
            url: "cfcs/past_customers.cfc?method=getpsaID&returnformat=json",
            beforeSend: function(){
                $('.loader').show();
            },
            complete: function(){
                 $('.loader').hide(3000);
            },
            failed: function(){
                $console.log("PSA Package failed");
            },
            success: function(data) {
              console.log(data);
                if (data != '') {
                  $("#psa_Status_DIV").css("display", "block");
                  $("#psaID").text(data.id);
                  $("#psaName").text(data.psa_package);

              }
                else {
                  $("#psa_Status_DIV").css("display", "none");
                  $("#psaID").text(data.id);
                  $("#psaName").text(data.psa_package);
                }
              }
        });
        }
        
    </script>

氟氯化碳:

    <!--- localize function variables --->
    <cfset var psaData = "">
    
    <cfquery name="psaData" datasource="#datasource#">
        SELECT id, psa_package
        FROM   psa_agreements
        <!--- adjust cfsqltype if needed --->
        WHERE customer_id = <cfqueryparam value="#ARGUMENTS.customer_id#" cfsqltype="cf_sql_varchar">
    </cfquery>
        
        
        <cfreturn psaData>
</cffunction>

我的输出正在返回数据,因为我可以在控制台中返回数据。但是我如何将该数据输出到我的 HTML?我上面的东西似乎没有做任何事情。

   {
    "COLUMNS": [
        "id",
        "psa_package"
    ],
    "DATA": [
        [
            64,
            "Bronze Protection Package"
        ]
    ]
}

在你的 success 函数中试试这个:

success: function(data) {
          console.log(data);
          $("#psa_Status_DIV").css("display", "block");
          $("#psaID").text(data.DATA[0][0]);
          $("#psaName").text(data.DATA[0][1]);
    });