jQuery.ajax()请求struts2数据 返回data值了undefined
我的jquery的代码
jQuery.ajax({
type:"POST",
url:"managerName",
// data:"systemkey="+selectValue, // 传入的参数
timeout: 10000,
data:null,
dataType:"json",
error : function(data) {
alert(data.returnValue);
},
success:function(data){
alert("success");
setValue(data);
}
});
}
后端action 的代码
public String managerName(){
response.setContentType("application/xml;charset=UTF-8");
PrintWriter out = null;
try {
out = response.getWriter();
} catch (
IOException e) {
e.printStackTrace();
}
try
{
String context="";
List<ManagerPo> managerList = (List<ManagerPo>) this.service.getList(namespace+"getManager", null);
for(ManagerPo manager : managerList ){
context += manager.getManagerId()+":"+manager.getUserName()+",";
}
out.print(context);
} finally
{
out.close();
}
return null;
}
struts.xml文件
<action name="managerName" class="registerAction" method="managerName"><!-- 向select中动态增加manager元素 -->
</action><!-- -->
是不是只要将返回值放入out 对象里就可以了?
但是jquery 执行了error : function(data)。
急!
------解决方案--------------------
先搞清楚问题出在哪里。
把那个链接不要用ajax请求,直接在浏览器里访问,看看返回什么结果,如果出错,那就是后台错误。如果页面返回的数据是你想要的,那么就是js处理错误。或者你用firebug看一下,看看请求的返回是什么。先搞清楚问题是出哪里了。