页面部分代码:
<form action="/manage/info.do?actionType=delete" method="post">
.
.
<% DBmanager db = new DBmanager();
String sql = "select * from info ";
ResultSet rs = db.doExcuteQuery(sql);
%>
<th height="74" ><%=rs.getInt("infoId")%></th>
.
.
<% if (!rs.next()) {
break;
}
}
%>
action部分代码:
InfoForm info = (InfoForm) form;
int id = info.getInfoId();
System.out.println(id);
打印出来的id是0;页面的infoId都可以正常显示,也可以找到对应的action的方法,但为什么传过来的值是0,而不是和页面对应的infoId啊???
<form action="/manage/info.do?actionType=delete" method="post">
.
.
<% DBmanager db = new DBmanager();
String sql = "select * from info ";
ResultSet rs = db.doExcuteQuery(sql);
%>
<th height="74" ><%=rs.getInt("infoId")%></th>
.
.
<% if (!rs.next()) {
break;
}
}
%>
action部分代码:
InfoForm info = (InfoForm) form;
int id = info.getInfoId();
System.out.println(id);
打印出来的id是0;页面的infoId都可以正常显示,也可以找到对应的action的方法,但为什么传过来的值是0,而不是和页面对应的infoId啊???
我该怎么改?
.
.
<% DBmanager db = new DBmanager();
String sql = "select * from info ";
ResultSet rs = db.doExcuteQuery(sql);
%>
<th height="74" ><html:text property="ad" value="<%=rs.getInt("infoId")%>" /></th>
.
.
<%if (!rs.next()) {
break;
}
}
%>
<html:form action="/manage/info.do?actionType=delete" method="post">
.
.
<% DBmanager db = new DBmanager();
String sql = "select * from info ";
ResultSet rs = db.doExcuteQuery(sql);
%>
<th height="74" ><html:hidden property="infoId" value="<%=rs.getInt("infoId")%>" /></th>
.
.
<%if (!rs.next()) {
break;
}
}
%>
结贴给分吧,谢谢。
看不明白
String sql = "select * from info ";
ResultSet rs = db.doExcuteQuery(sql);
%>
<th height="74" ><%=rs.getInt("infoId")%></th>//我不明白你没有执行rs.next()你怎么可能取得值呢?
.
.
<%if (!rs.next()) {
break;
}
}
%>
break;
}
而你又有一个break,所以我猜会有一个循环,如果要正确我猜你的代码大概就是这样子了
<% DBmanager db = new DBmanager();
String sql = "select * from info ";
ResultSet rs = db.doExcuteQuery(sql);rs.next();
while(true){
%>
<th height="74" ><%=rs.getInt("infoId")%></th>
.
.
<%if (!rs.next()) {
break;
}
}
%>