消息关闭
    暂无新消息!

ajax post提交到action无法获取json数据

问题作者 : Legge2017-07-18发布
从前台请求数据确保是传过去了,但是后台就是无法获取到,跪求大神指导啊

jsp代码如下:
$("#but").click(function(){
var name=$("#name").val();
$.ajax({
type:"post",
url:"/ajaxtest/ajax/ajaxtest.action",
data:{
name:name
},
contentType:"application/json;charset=utf-8",
success : function(data) {
alert(data);
                if(data!=null){
                 var myData = eval("(" + data+")");
                 alert(myData.info);
                }else{
                 alert("数据异常");
                }
            },
dataType:"json"
});
});

Struts代码:
<package name="ajax" namespace="/ajax" extends="json-default">
<action name="ajaxtest" class="ajax.action.AjaxAction" method="ajaxtest">
<result name="success">/index.jsp</result>
</action>
</package>

action代码:
public class AjaxAction extends ActionSupport{
private static final long serialVersionUID = 1L;
private String name;

public String ajaxtest(){
System.out.println(name);
return SUCCESS;
}

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

3个回答

︿ 3
你可以参考下项目中其他用到ajax方法的类,看是哪一步出了问题,个人觉得是你controller的接受方法有问题,但是长时间没用过了,不知道怎么接收了。。。
︿ 1
index.jsp必须是json格式的才可以啊 
例如
<%@ page contentType="application/json;charset=UTF-8" language="java" %>{"name":"xxx"}

︿ 0
<%@ page contentType="application/json;charset=UTF-8" language="java" %>
这个加进去jsp都有问题了