我打電話用下面的代碼的函數:JavaScript函數沒有返回值
var resultz = nsEditor.updateStringCall(debtID, column2Change, value2Change, 4, 10);
的函數被調用,但沒有返回值
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
} //結束updateStringCall
該函數使用.ajax的調用一個ColdFusion CFC方法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>
查詢成功運行,但js函數不返回值(它顯示爲未定義)。即使它出現錯誤,我也會認爲我已經足夠了,至少可以得到一個返回值。
想法?
打開FireFox + Firebug,打開NET選項卡並查看您的AJAX請求和響應。這可能會給你一個線索。 – 2012-02-21 20:24:09