function getWeatherReport()
{
// 调用Ajax方法获取天气信息
main.getWeatherReportInfo(getWeatherReportInfo_callback);
// 每隔2.5小时更新一次天气信息
timers_panel["weatherReport"] = setTimeout("getWeatherReport()", 9000000);
}
// 回调函数:根据Ajax方法的返回结果呈现页面
function getWeatherReportInfo_callback(response)
{
alert("afdf");
// 天气信息
var strArr =response.value;
alert(strArr);
// 获取天气类型信息的描述
var weatherElements = new Array();
weatherElements=strArr.split(",");
weatherElements=response.value;
alert(weatherElements[3]);
}
原来是weatherElements=strArr.split(",");一直都没法正确执行alert(weatherElements[3]),后来发现,原来我定义的函数main.getWeatherReportInfo返回类型是string[],用alert(strArr)跟踪的值看上去是逗号分隔的字符串,实则是一个对象,其内容是数组,怀疑是alert()自动进行了转化。将weatherElements=strArr.split(",");换为weatherElements=response.value; 问题解决!