日期:2014-05-20  浏览次数:20780 次

Struts2怎么用A标签传对象并封装到Action中?
我用A标签传数据可以,并且封装到Action中了。
我又通过A标签传了个List集合,Action中也是用的一个List集合接收的(有get/set方法),但是去不来值,他的size却是1,怎么回事?各位大侠帮帮忙

A标签
<a href="infoVote.action?list=${subjects}"></a> // subjects 是一个List对象并且有数据

Action中
private List list;
 //get set在这里就省略了

不知道list 传过来没,可以去到list 的size()方法 返回来的长度是 1 ,可是取不到数据,怎么回事?

  各位大侠帮帮忙

------解决方案--------------------
再牛B框架,也不带直接这样传对象的

JSP的原理是:你编写的是动态的,但是当你访问看到页面的时候,是已经编译过后的HTML文件。
${subjects}这个东东,当你打开这个页面的时候,他已经被编译成它的内存地址的字符串了。

你再传到后台,取到的也就是一个字符串而已。
------解决方案--------------------
a标签是不能传对象的,你想要的效果可以这样实现:
<script type="text/javascript">
function submit(){
document.getElementById("myForm").submit();
}
</script>

<body>
<a href="javascript:submit()">跳转</a>
<form id="myForm" action="infoVote.action" method="post">
<input type="hidden" name="list" value="${subjects}"/>
</form>
</body>