求懂jquery和动态action的人:jquery的ajax动态action传不了action中的方法名

$(document).ready(function(){$("button").click(function(){$.post("news.html?ms=lxy",f... $(document).ready(function(){
$("button").click(function(){
$.post("news.html?ms=lxy",function(result){
alert(result);
alert(result.users[0].name);
});
});
});
第一个alert是
{"users":[{"name":"chuanguolaile"}]}
第二次就出错了..说是这个users是空
Error: Unable to get value of the property '0': object is null or undefined
java:
PrintWriter out = response.getWriter();
String ms=request.getParameter("ms");
if("lxy"==ms)
{
out.println("{\"users\":[{\"name\":\"chuanguolaile\"}]}");
return null;
}
else
{
out.println("{\"users\":[{\"name\":\"meiyouchuanguolai\"}]}");
return null;
}
这个方法是默认的方法,把js改成
$(document).ready(function(){
$("button").click(function(){
$.post("news.html?para=getName",function(result){
alert(result);
alert(result.users[0].name);
});
});
});
这样就不行了
public ActionForward getName(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
PrintWriter out = response.getWriter();
out.println("{\"users\":[{\"name\":\"lxy\"}]}");
out.flush();
out.close();
return null;
}
这样传过来getName但是不知道里面怎么传的它不认识...所以还是用的上面的函数
展开
 我来答
cai0331
2012-07-03 · TA获得超过201个赞
知道答主
回答量:36
采纳率:0%
帮助的人:31.7万
展开全部
第一个alert是
{"users":[{"name":"chuanguolaile"}]}
第二次就出错了..说是这个users是空
Error: Unable to get value of the property '0': object is null or undefi
说明第二次值没有写进去或者写的不对
可能原因有缓存。
java:
PrintWriter out = response.getWriter();
String ms=request.getParameter("ms");
if("lxy"==ms)
{
out.println("{\"users\":[{\"name\":\"chuanguolaile\"}]}");
//要添加上缓存更新和关闭字节流
out.flush();
out.close();

return null;
}
else
{
out.println("{\"users\":[{\"name\":\"meiyouchuanguolai\"}]}");
//要添加上缓存更新和关闭字节流
out.flush();
out.close();

return null;
}
//如果不是这肯能还要具体分析一下

这个方法是默认的方法,把js改成
$(document).ready(function(){
$("button").click(function(){
$.post("news.html?para=getName",function(result){
alert(result);
alert(result.users[0].name);
});
});
});
这样就不行了
public ActionForward getName(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
PrintWriter out = response.getWriter();
out.println("{\"users\":[{\"name\":\"lxy\"}]}");
out.flush();
out.close();
return null;
}
这样传过来getName但是不知道里面怎么传的它不认识...所以还是用的上面的函数
//这个看样子对servlet 不太熟

news.html?para=getName // 这个是URL para这个是要传递的参数在servlet通过

String ms=request.getParameter("ms");//可以获得后面的值

你后面跟的是方法名称肯定是不行的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式