前台通过jQuery传输JS对象数组,Struts2 Action中如何解析?
我的代码:
$("#myButton").live("click",function() {
// k为JS对象数组
var k=MYLIST.getSelected();
var l=new Array();
for(var d=0;d<k.length;d++) {
var f={
isDir:k[d].getType()=="file"?0:1,
hId:k[d].getType()=="file"?k[d].getHId():0,
path:k[d].path()
};
l.push(f);
}
var g=new class_filelist_file_operations();
g.setPathNodes(l);
var d = {
act : "td",
dlpathlist : g.getPathNodes()
};
// 以下部分是自己封装的jQuery Ajax
var c = new my.FService();
c.url = "file_tDownload";
c.myAJAX({
data : d, // 传输到Action的数据
success : function(h) {
},
error : function(h) {
}
})
});
通过调试抓包查看传输到后台的数据格式为:
act:tardown
dlpathlist[0][isDir]:1
dlpathlist[0][hId]:0
dlpathlist[0][path]:/testtest/测试新建文件夹
dlpathlist[1][isDir]:0
dlpathlist[1][hId]:20
dlpathlist[1][path]:/testtest/Java程序员要去的网站.txt
请问我在Struts2 Action中如何获得 dlpathlist 传输的JS对象数组中的值?谢谢大家~
前端 如下修改dlpathlist 的值:将g.getPathNodes()解析出JSON字符串。问题解决。
var d = {
act : "td",
dlpathlist : JSON.stringify(g.getPathNodes())
};
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。