cfajaxproxy возвращает неопределенный - PullRequest
1 голос
/ 17 ноября 2011

Я использую cfajaxproxy для извлечения данных из БД и их отображения. Например, у меня есть выпадающий список с кодом страны. При изменении кода страны должно отображаться правильное название страны из базы данных. но это возвращает неопределенное значение. Ниже приведен код

<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 Ответ

2 голосов
/ 17 ноября 2011

Вы возвращаете запрос из своего cfc, но ссылаетесь на result.value.Используйте console.log (result), чтобы увидеть, какие именно свойства доступны для вас - я уверен, что «value» не является одним из них.Кроме того, я уверен, что присвоение innerHTML самому объекту результата не сработает - это тоже должно быть правильным свойством.

...