您的位置:首页 > Web前端 > JQuery

关于struts2后台接受jquery ajax提交的复杂对象

2012-07-30 13:47 260 查看
=============================Struts2配置文件==================================================

最主要的是Struts2的配置 如下配置好了,才能接受从前台通过ajax传来的复杂对象

<package name="abstract_struts" abstract="true" extends="struts-default,json-default" namespace="/">

<interceptors>

<interceptor-stack name="myStack">

<interceptor-ref name="json"></interceptor-ref>

<interceptor-ref name="defaultStack" />

</interceptor-stack>

</interceptors>

<default-interceptor-ref name="myStack" />

</package>

<package name="TestSHH" namespace="/" extends="abstract_struts">

<action name="login" class="com.hisoft.test.file.LoginAction" method="login">

<result name="success">/jsp/file/fileList.jsp</result>

<result name="false">/jsp/error.jsp</result>

</action>

<action name="addFile" class="com.hisoft.test.file.LoginAction" method="addFile">

<result type="json">

<param name="root">fileInfo.strFileList</param>

</result>

</action>

</package>

=============================前台js==================================================

var params = getFile();

var dataset = JSON.stringify(params);

$.ajax({

url:url,

type:"post",

async:true,

contentType:"application/json",

data:dataset,

success:function(json){

if(json.hashSyError){

alertMessage(json.errorCode,json.errorMsg);

}

else if(json.hashApError){

alertMessage(json.errorCode,json.errorMsg);

}else{

$("#tblFileList").datagrid('load',JSON.parse(json));

$("#tblFileList").datagrid('loadData',JSON.parse(json));

}

},

error:function(e){

alert(e.responseText);

}

});

function getFile() {

// fileInfo是action中对应的复杂对象,也可以说是一个类的对象

var params={fileInfo:{

fileName:$("#fileName").val(),

fileType:$("#fileType").val(),

fileContent:$("#fileContent").val()

}};

return params;

}

=============================后台action==================================================

public String addFile() {

System.out.println(fileInfo.getFileName());// fileInfo一定要有get和set方法

System.out.println(fileInfo.getFileContent());

return SUCCESS;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: