在我的一个网页中,我有一个HTML表格。该表将包含0行或更多行,每行包含3列。
看起来像这样:
<table>
<tr>
<td>Row1-Col1</td>
<td>Row1-Col2</td>
<td>Row1-Col1</td>
</tr>
<tr>
<td>Row2-Col1</td>
<td>Row2-Col2</td>
<td>Row3-Col1</td>
</tr>
</table>
我想将列的值(td的内容)传递给Action类。
有没有办法
Struts 2 btw。
由于
答案 0 :(得分:1)
我想,有一种可能的解决方案,你在迭代器中有这些行...
所以JSP看起来像那样:
<s:form action="myAction">
<table>
<s:iterator value="someCollection" status="stat">
<!-- set id of column -->
<tr id="myTd<s:property value="#stat.index" />">
<td>some html</td>
</tr>
</s:iterator>
</table>
<s:hidden name="lastIndex" />
<s:hidden name="htmlValues" />
<s:submit onclick="submitValues();">
</s:form>
JS档案:
function submitValues() {
var htmlValue;
int i = 0;
while(document.getElementById('myId'+i)) {
htmlValue += document.getElementById('myId'+i).innerHTML;
i++;
}
document.getElementyById('lastIndex').value = i;
document.getElementyById('htmlValues').value = htmlValue;
}
动作类:
public MyAction extends ActionSupport {
private Integer lastIndex;
private String htmlValues;
public String execute() {
//here there should be values filled
System.out.println(getLastIndex);
}
}
我没有测试过这个,所以也许可能会有错误,但主要的想法是显示出来的。当然,你将以html形式进入htmlValues
动作类,但是那里有很多html语法分析。