就是点每一栏预订,需要这一栏的所有数据,因为中文用url传参很麻烦请问还有没有其他方法,求教。
解决方案 »
- 如何获得百度知道里面的“浏览次数”
- iframe问题百出~郁闷~散分求解!
- 請問網頁如何控制權限??在線等......................
- 用jxl这个类产生excel文档,并把特定列保护
- 将整个表格的数据传到后台由struts2接收怎么做
- 怎样设置JSP页面中表格的边框?
- 如何利用servlet?
- SOS!!如何在Tomcat 4.1中配置网络应用程序howjsp的目录结构??(java 1.4.2环境)
- JSP中URL的乱码问题!(传递中文)
- 怎么用JSP动态查询EXCEL文件中的数据????????????????????
- JSP页面中关于传递对象的问题
- 搜索引擎无法在tomcat中运行。。。毕设急。。
<input id="num" type="text" name="num" value="<%=rs.getString("contents")%>" style="overflow:hidden;border:0px">
...
</form>
<a href="xxxooo.jsp?id=${id}">预订</a>
如果你能把该表格的JSP源码贴出来,就更容易清晰化这个问题了。
<%
List<FlightTicket> flightTickets = (List<FlightTicket>) session.getAttribute("ticketList");
PageOption pageOption = (PageOption) session.getAttribute("pageOption");
if (flightTickets.size() != 0) {
for (int i = 1; i <= flightTickets.size() - 1; i++) {
if (i % 2 == 1) {
%>
<form action="test.action" method="post">
<tr bgcolor="#ffeeff">
<%
}
else{
%>
<tr bgcolor="#eeffff">
<%
}
%>
<td><%=flightTickets.get(i).getStart()%>
</td>
<td><%=flightTickets.get(i).getDestination()%>
</td>
<td><%=flightTickets.get(i).getFlyDate()%>
</td>
<td><%=flightTickets.get(i).getFlightCompany()%>
</td>
<td><%=flightTickets.get(i).getSalePrice()%>
</td>
<td>
<input id="start" type="hidden" name="start" value="<%=flightTickets.get(i).getStart()%>">
<input type="submit" value="预订">
</td>
</tr>
</form>
<%
}
}
%>
<%
List<FlightTicket> flightTickets = (List<FlightTicket>) session.getAttribute("ticketList");
PageOption pageOption = (PageOption) session.getAttribute("pageOption");
if (flightTickets.size() != 0) {
for (int i = 1; i <= flightTickets.size() - 1; i++) {
if (i % 2 == 1) {
%>
<form action="test.action" method="post">
<tr bgcolor="#ffeeff">
<%
}
else{
%>
<tr bgcolor="#eeffff">
<%
}
%>
<td><%=flightTickets.get(i).getStart()%>
</td>
<td><%=flightTickets.get(i).getDestination()%>
</td>
<td><%=flightTickets.get(i).getFlyDate()%>
</td>
<td><%=flightTickets.get(i).getFlightCompany()%>
</td>
<td><%=flightTickets.get(i).getSalePrice()%>
</td>
<td>
<input id="start" type="hidden" name="start" value="<%=flightTickets.get(i).getStart()%>">
<input type="submit" value="预订">
</td>
</tr>
</form>
<%
}
}
%>
import com.opensymphony.xwork2.ActionSupport;/**
* Created by IntelliJ IDEA.
* User: Administrator
* Date: 12-5-20
* Time: 上午10:29
*/
public class testAction extends ActionSupport {
private String start; public String getStart() {
return start;
} public void setStart(String start) {
this.start = start;
} public String execute(){
System.out.println(start);
return SUCCESS;
}
}
一般是建议用主键来重新访问数据库,因为页面所传递的数据单项,是有可能被篡改的。
你这里面的这句话:
<input id="start" type="hidden" name="start" value="<%=flightTickets.get(i).getStart()%>">
已经实现提交参数了,如果要其它的,就多写几行而已:
<input id="destination" type="hidden" name="destination" value="<%=flightTickets.get(i).getDestination()%>">其实如果是只提交主键ID,你的提交数据量很小,不建议用这种提交按钮:
<input type="submit" value="预订">
直接用<A>标签更方便:
<a href="test.action?start=<%=flightTickets.get(i).getStart()%>"
我不知道你这个链接后到下个页面的数据是又数据库查出来的还是一直传过去的!
如果是查出来的就直接传个主键ID 到后台查出来给下个页面!
如果是直接传过去的我知道的有两种方法:1.没中文的时候可以 传多个参数,你这有几个参数就传几个 比如第一个可以传***.jsp?start=guangzhou&end=shanghai..... 都这样传!
2.(有中文的时候)通过js或jquery把你要传的那一行数据通过json转成String传过去!
使用规则问题,如果用Struts2来处理提交数据的,要用它提供的Tag标签库来生成<INPUT>控件的。10楼给出的,是原始方法,要用 request.getParameter("start"); 才能获得,无法借助Struts来自动值对象化。