cfajaxproxy返回undefined

时间:2011-11-17 06:08:42

标签: coldfusion

我正在使用cfajaxproxy从db获取数据并显示它。例如,我有一个下拉列表,其中包含国家/地区代码。在更改国家/地区代码时,它应显示来自db的正确国家/地区名称。但它返回未定义的值。以下是代码

<cfajaxproxy cfc="cfcProxy" >

<script language="javascript">
function getCountry(code)
{
var code=document.getElementById('code').value;
var object=new cfcProxy();
object.setCallbackHandler(getCountryResult);
object.setErrorHandler(errorhandler);
object.getCountrylist(code);
}
function getCountryResult(result)
{   
alert(result.value);
document.getElementById('country').innerHTML=result;
}
function errorhandler()
{
alert("Problems running proxy");
}

Country code: <select name="code" id="code" onchange="getCountry();">
<cfoutput>
<cfloop query="getCountrylistfrmDB">
<option value="#code#">#code#</option>
</cfloop>
</option>
</cfoutput>
</select><br><br>

<div id="country"></div>

cfcProxy.cfc is

<cffunction name="getCountrylist" access="remote" returntype="query">
<cfargument name="code" required="yes">
<cfquery name="getCountrylistfrdisp" datasource="test">
select country from countrycode where code = "#arguments.code#"->
</cfquery>
<cfreturn getCountrylistfrdisp>
</cffunction>

1 个答案:

答案 0 :(得分:2)

您正在从cfc返回查询但引用result.value。使用console.log(result)来确切地查看可供您引用的属性 - 我很确定“value”不是其中之一。另外,我非常确定将innerHTML分配给结果对象本身是行不通的 - 这也必须是正确的属性。