2017-06-16 4 views
0

Je suis coincé, je fais un appel Ajax d'un cfm à un fichier .cfc. J'essaie de récupérer deux résultats, un "label" et une "valeur". C'est ce que mon JSON retourné ressemble:Comment puis-je obtenir plusieurs valeurs d'ajax cfc? Je reçois obj dans mon champ de texte

[{ "valeur": "H55", "label": "JOHN SMITH"}]

Cependant, lorsque je tente d'avoir mes résultats viennent dans mon vide champ de formulaire, il est juste rempli avec [objet objet]

Toute aide serait grandement appréciée!

$('#ckPin').click(function() { 
var RqPin = $("#RqPin").val(); 
    $.ajax({ 
    url: "autocomplete.cfc?method=getRqstPin", 
    type: "post", 
    dataType: "json", 
    data: { RqPin: (RqPin) }, 
    success: function(data) { 
      //alert(data); 
       alert(JSON.stringify(data)); 
      //$("#rqFOC").val(data["FOC"]); 
       $("#rqName").val(data[0]); 
     }, //close of SUCCESS 
    error: function (xhr, textStatus, errorThrown){ 
       alert(errorThrown); 
     } //close of ERROR 
    }); //close of AJAX 
});//close of CLICK 

et voici mon .cfc

<cffunction name="getRqstPin" access="remote" returntype="any" returnformat="json"> 
    <cfargument name="RqPin" default=""> 
    <cfquery name="getRqstPin" datasource="RADIUS"> 
       SELECT [Fname] + '' + [Lname] as Fullname 
         ,[FOC] 
        FROM [pins].[dbo].[Pinsdata] 
        Where PIN = #arguments.RqPin# 
    </cfquery> 

    <cfset returnArray = arrayNew(1)> 
    <cfloop query="getRqstPin"> 
     <cfset resultStruct = StructNew() /> 
     <cfset resultStruct["label"] = Fullname /> 
     <cfset resultStruct["value"] = FOC /> 
     <cfset ArrayAppend(returnArray,resultStruct) /> 
    </cfloop> 
    <cfreturn returnArray> 
</cffunction> 

Répondre

0

data[0] est un objet .Soit vous vous devez définir le value ou label au val()-$("#rqName").

$("#rqName").val(data[0].value); 

ou

$("#rqName").val(data[0].label); 
+0

Merci beaucoup ankit !! – xicano66