Javascript de la fonction ne retourne pas de valeur

Je suis l'appel d'une fonction avec le code suivant:

var resultz = nsEditor.updateStringCall(debtID, column2Change, value2Change, 4, 10);

La fonction qui est appelée, mais ne retourne pas une valeur

        updateStringCall: function(pdebtID, pcolumn2Change, pvalue2Change, pmin, pmax){
try {
    var resultz2 = 0;
    $.ajax({
        type: "POST",
        url: "Components/MintLibraries.cfc",
        dataType: "json",
        cache: false,
        data: {
                method: 'StringUpdate',
            val2Change: pvalue2Change.trim(),
            debtID: pdebtID,
            column2Change: pcolumn2Change,
            greaterThan: pmin,
            lesserThan: pmax,
            returnFormat: "json"
        },
        success: function(response) {
                       resultz2 = 1;
          return resultz2;
        },  //end done
        error: function(jqXHR, textStatus, errorThrown){
           resultz2 = 0;
                       return resultz2;
                }); //end ajax call
} catch (e) {
    resultz2 = 0;
    return resultz2;
}  //end trycatch

}, //fin de la updateStringCall

Cette fonction utilise l' .ajax pour appeler un coldfusion cfc méthode StringUpdate:

<cffunction name="StringUpdate" access="remote" output="false" returntype="any" >    
<cfargument name="val2Change" type="string"  required="true" />
<cfargument name="debtID"  type="string"  required="true" />
<cfargument name="column2Change"  type="string"  required="true" />
<cfargument name="greaterThan"  type="numeric"   required="false" />
<cfargument name="lesserThan"  type="numeric"  required="false" />
<cfset var debt2Pass = int(val(arguments.debtID)) />
<cfset var updQuery = "" />
<cfset var retValue = 0 />
<cfset var iVal = 0 /><cfset var valError = '' />
<cftry>
<cfquery name="updQuery" datasource="#application.datasource#" result="qResults"    >
Update dmf set #arguments.column2Change# =
<cfqueryparam cfsqltype="cf_sql_varchar" value="#arguments.val2Change#"/>
where DebtID = 
<cfqueryparam cfsqltype="cf_sql_smallint" value="#arguments.debtID#"/>
</cfquery> 
<cfset retValue = 1 />    
<cfcatch type="Any" >
<cfset thrown = ThrowCFError(405,'debug',  'Error updating ' &  arguments.DebtID,arguments.val2Change & ', ' &  arguments.debtID & ',' & arguments.column2Change)  />
<cfset retValue = 0 />
</cfcatch>
</cftry>
<cfreturn retValue />
</cffunction>

La requête s'exécute correctement, mais le js fonction ne retourne pas une valeur (il se présente comme non-défini). Même s'il fait une erreur, je pense que j'ai représenté assez pour que d'obtenir au moins une valeur de retour.

Idées?

Ouvrir FireFox+Firebug, ouvrez l'onglet NET et de regarder votre requête AJAX et de la réponse. Cela peut vous donner un indice.

OriginalL'auteur Michael BW | 2012-02-21