【发布时间】:2017-02-01 13:51:26
【问题描述】:
我有调用 .cfc pag 的函数。我正在传递方法和参数以及页面名称。这是我的代码:
function callFunction(name){
param = name;
location.href = 'myTest.cfc?method=getRecords&userName=' + param;
}
这是我在 cfc 页面上的 cffunction:
<cfcomponent>
<cffunction name="getRecords" access="remote" returnformat="void">
<cfargument name="userName" type="string" required="yes">
<cfset myResult = "1">
<cftry>
<cfquery name="getResults" datasource="test">
//myQuery
</cfquery>
<cfcatch>
<cfoutput>#cfcatch#</cfoutput>
<cfset myResult="0">
</cfcatch>
</cftry>
<cfreturn myResult>
</cffunction>
</cfcomponent>
在我调用我的函数后,我的代码没有给我返回变量。我不确定我的代码中缺少什么。如果有人可以帮助解决这个问题,请告诉我。
【问题讨论】:
-
你有
returnFormat="void"。 void 用于 returnType。returnFormat应该是json、wddx或plain。 -
是的,我需要获取结果,但在这种情况下我不能使用 Ajax。在这种情况下,还有其他方法可以处理响应吗?
-
不能用ajax是什么意思。您显然可以控制 javascript。目前尚不清楚您要如何处理来自
getRecords的数据。您是否尝试将用户发送到页面?在页面上显示记录?根据用户名将用户发送到页面?在提供的代码中,您的函数不会调用 cfc 页面。 -
只是为了检查我的结果是成功 = 1 还是警告错误如果它是 0。是的,我不能使用 ajax,因为这会导致我的代码中出现一些其他问题。我的 cffunction 中还包含其他内容。
-
您的代码没有调用该页面。它只是将一个字符串分配给变量
location.href。您是否有更多代码可以使这更有意义。如果您希望您的 javascript 知道该调用的结果是 1 还是 0,则必须调用幕后页面 AJAX。
标签: javascript coldfusion cffunction