我是这样想的:在每条信息前加个checkbox,如果想要修改哪个user,就选种他前面的checkbox并进行修改,然后点‘保存’更新所更改的那些user。
如果可以怎么实现?请说得具体些好吗?
7 个解决方案
#1
up
#2
checkbox提交到后台就是一个数组,你可以判断每个元素是否被选中
#3
<jsp:useBean id="addressbook" class="addressbook.bean.AddressBookBean" scope="session"/>
<%
HashMap addresses = addressbook.getAllAddress();
Iterator it = addresses.values().iterator();
System.out.println("Size of addresses = "+addresses.size());
%>
<form>
<table width="460" height="70" border="2" align="center">
<tr>
<td width="20" height="30"> </td>
<td width="93" align="center">Name</td>
<td width="106" align="center">Phone</td>
<td width="211" align="center">Address</td>
</tr>
<%
while(it.hasNext()){
addressbook = (AddressBookBean)(it.next());
%>
<tr>
<td height="30"><input type="checkbox" name="checkbox" value="<%=(addressbook).getId() %>" /></td>
<td height="30"><input name="textfield1" type="text" value="<%=(addressbook).getName() %>" size="13"/></td>
<td height="30"><input name="textfield2" type="text" value="<%=(addressbook).getPhone() %>" size="15"/></td>
<td height="30"><input name="textfield2" type="text" value="<%=(addressbook).getAddress() %>" size="30"/></td>
</tr>
<%} %>
</table>
<br>
<input type="submit" name="Save" value="save" onclick="this.form.action='/save'"/>
<input type="submit" name="Delete" value="delete" onclick="this.form.action='/delete'"/>
<input type="button" name="Add" value="add" onclick="this.form.action='/insert'"/>
</form>
这是我写的jsp,但是有很多问题,请大家看看吧
<%
HashMap addresses = addressbook.getAllAddress();
Iterator it = addresses.values().iterator();
System.out.println("Size of addresses = "+addresses.size());
%>
<form>
<table width="460" height="70" border="2" align="center">
<tr>
<td width="20" height="30"> </td>
<td width="93" align="center">Name</td>
<td width="106" align="center">Phone</td>
<td width="211" align="center">Address</td>
</tr>
<%
while(it.hasNext()){
addressbook = (AddressBookBean)(it.next());
%>
<tr>
<td height="30"><input type="checkbox" name="checkbox" value="<%=(addressbook).getId() %>" /></td>
<td height="30"><input name="textfield1" type="text" value="<%=(addressbook).getName() %>" size="13"/></td>
<td height="30"><input name="textfield2" type="text" value="<%=(addressbook).getPhone() %>" size="15"/></td>
<td height="30"><input name="textfield2" type="text" value="<%=(addressbook).getAddress() %>" size="30"/></td>
</tr>
<%} %>
</table>
<br>
<input type="submit" name="Save" value="save" onclick="this.form.action='/save'"/>
<input type="submit" name="Delete" value="delete" onclick="this.form.action='/delete'"/>
<input type="button" name="Add" value="add" onclick="this.form.action='/insert'"/>
</form>
这是我写的jsp,但是有很多问题,请大家看看吧
#4
这是常见的动态界面保存,查询出的数据都放在文本框里,提交时判断是否选中,然后修改选中数据.还有动态的校验,比如数字,长度.有时还要求数据翻页等等.
#5
我对这web不是很懂,所以请大家尽量说得详细一些好吗?
1,我修改后的数据什么获得,如addressbook.name;addressbook.phone;addressbook.address的值修改后怎么得到。
2,如何判断checkbox被选中
1,我修改后的数据什么获得,如addressbook.name;addressbook.phone;addressbook.address的值修改后怎么得到。
2,如何判断checkbox被选中
#6
zhuxr2003,你别介绍一下就走了啊!
#7
比如addressbook表有两个字段id,name,其中id是表的主键.name是名字.然后查询,
比如"select id,name from addressbook".
程序大致如下:
先把查询出的数据放入一个ArrayList,这个实现很简单,推荐用structs.
ArrayList ab;//查询出的全部数据
循环列出数据{
<input type="checkbox" name="cb<%=ab.GetId()%>">
<input type="text" name="t<%=ab.GetId()%>" value="<%=ab.GetName()%>">
}
大致意思就是checkbox的名字都是cb加上id值.而文本框的名字都是t加上id值,而且文本框内容就是name值.
<%=ab.GetId()%>和<%=ab.GetName()%>可以用structs标签代替,我这里是举个例子.
修改提交后,要重新查询一次,然后判断
request.getParameter("ab"+ab.GetId())是否为空,不为空表示已选中.
然后修改选中的name值,比如"update addressbook set name='"+request.getParameter("t"+ab.GetId())+"' where id='"+ab.GetId()+"'"
这是最简单的动态表单修改,还有涉及表单动态校验和翻页等较难的情况.其实解决方法也和上面类似.
比如"select id,name from addressbook".
程序大致如下:
先把查询出的数据放入一个ArrayList,这个实现很简单,推荐用structs.
ArrayList ab;//查询出的全部数据
循环列出数据{
<input type="checkbox" name="cb<%=ab.GetId()%>">
<input type="text" name="t<%=ab.GetId()%>" value="<%=ab.GetName()%>">
}
大致意思就是checkbox的名字都是cb加上id值.而文本框的名字都是t加上id值,而且文本框内容就是name值.
<%=ab.GetId()%>和<%=ab.GetName()%>可以用structs标签代替,我这里是举个例子.
修改提交后,要重新查询一次,然后判断
request.getParameter("ab"+ab.GetId())是否为空,不为空表示已选中.
然后修改选中的name值,比如"update addressbook set name='"+request.getParameter("t"+ab.GetId())+"' where id='"+ab.GetId()+"'"
这是最简单的动态表单修改,还有涉及表单动态校验和翻页等较难的情况.其实解决方法也和上面类似.
#1
up
#2
checkbox提交到后台就是一个数组,你可以判断每个元素是否被选中
#3
<jsp:useBean id="addressbook" class="addressbook.bean.AddressBookBean" scope="session"/>
<%
HashMap addresses = addressbook.getAllAddress();
Iterator it = addresses.values().iterator();
System.out.println("Size of addresses = "+addresses.size());
%>
<form>
<table width="460" height="70" border="2" align="center">
<tr>
<td width="20" height="30"> </td>
<td width="93" align="center">Name</td>
<td width="106" align="center">Phone</td>
<td width="211" align="center">Address</td>
</tr>
<%
while(it.hasNext()){
addressbook = (AddressBookBean)(it.next());
%>
<tr>
<td height="30"><input type="checkbox" name="checkbox" value="<%=(addressbook).getId() %>" /></td>
<td height="30"><input name="textfield1" type="text" value="<%=(addressbook).getName() %>" size="13"/></td>
<td height="30"><input name="textfield2" type="text" value="<%=(addressbook).getPhone() %>" size="15"/></td>
<td height="30"><input name="textfield2" type="text" value="<%=(addressbook).getAddress() %>" size="30"/></td>
</tr>
<%} %>
</table>
<br>
<input type="submit" name="Save" value="save" onclick="this.form.action='/save'"/>
<input type="submit" name="Delete" value="delete" onclick="this.form.action='/delete'"/>
<input type="button" name="Add" value="add" onclick="this.form.action='/insert'"/>
</form>
这是我写的jsp,但是有很多问题,请大家看看吧
<%
HashMap addresses = addressbook.getAllAddress();
Iterator it = addresses.values().iterator();
System.out.println("Size of addresses = "+addresses.size());
%>
<form>
<table width="460" height="70" border="2" align="center">
<tr>
<td width="20" height="30"> </td>
<td width="93" align="center">Name</td>
<td width="106" align="center">Phone</td>
<td width="211" align="center">Address</td>
</tr>
<%
while(it.hasNext()){
addressbook = (AddressBookBean)(it.next());
%>
<tr>
<td height="30"><input type="checkbox" name="checkbox" value="<%=(addressbook).getId() %>" /></td>
<td height="30"><input name="textfield1" type="text" value="<%=(addressbook).getName() %>" size="13"/></td>
<td height="30"><input name="textfield2" type="text" value="<%=(addressbook).getPhone() %>" size="15"/></td>
<td height="30"><input name="textfield2" type="text" value="<%=(addressbook).getAddress() %>" size="30"/></td>
</tr>
<%} %>
</table>
<br>
<input type="submit" name="Save" value="save" onclick="this.form.action='/save'"/>
<input type="submit" name="Delete" value="delete" onclick="this.form.action='/delete'"/>
<input type="button" name="Add" value="add" onclick="this.form.action='/insert'"/>
</form>
这是我写的jsp,但是有很多问题,请大家看看吧
#4
这是常见的动态界面保存,查询出的数据都放在文本框里,提交时判断是否选中,然后修改选中数据.还有动态的校验,比如数字,长度.有时还要求数据翻页等等.
#5
我对这web不是很懂,所以请大家尽量说得详细一些好吗?
1,我修改后的数据什么获得,如addressbook.name;addressbook.phone;addressbook.address的值修改后怎么得到。
2,如何判断checkbox被选中
1,我修改后的数据什么获得,如addressbook.name;addressbook.phone;addressbook.address的值修改后怎么得到。
2,如何判断checkbox被选中
#6
zhuxr2003,你别介绍一下就走了啊!
#7
比如addressbook表有两个字段id,name,其中id是表的主键.name是名字.然后查询,
比如"select id,name from addressbook".
程序大致如下:
先把查询出的数据放入一个ArrayList,这个实现很简单,推荐用structs.
ArrayList ab;//查询出的全部数据
循环列出数据{
<input type="checkbox" name="cb<%=ab.GetId()%>">
<input type="text" name="t<%=ab.GetId()%>" value="<%=ab.GetName()%>">
}
大致意思就是checkbox的名字都是cb加上id值.而文本框的名字都是t加上id值,而且文本框内容就是name值.
<%=ab.GetId()%>和<%=ab.GetName()%>可以用structs标签代替,我这里是举个例子.
修改提交后,要重新查询一次,然后判断
request.getParameter("ab"+ab.GetId())是否为空,不为空表示已选中.
然后修改选中的name值,比如"update addressbook set name='"+request.getParameter("t"+ab.GetId())+"' where id='"+ab.GetId()+"'"
这是最简单的动态表单修改,还有涉及表单动态校验和翻页等较难的情况.其实解决方法也和上面类似.
比如"select id,name from addressbook".
程序大致如下:
先把查询出的数据放入一个ArrayList,这个实现很简单,推荐用structs.
ArrayList ab;//查询出的全部数据
循环列出数据{
<input type="checkbox" name="cb<%=ab.GetId()%>">
<input type="text" name="t<%=ab.GetId()%>" value="<%=ab.GetName()%>">
}
大致意思就是checkbox的名字都是cb加上id值.而文本框的名字都是t加上id值,而且文本框内容就是name值.
<%=ab.GetId()%>和<%=ab.GetName()%>可以用structs标签代替,我这里是举个例子.
修改提交后,要重新查询一次,然后判断
request.getParameter("ab"+ab.GetId())是否为空,不为空表示已选中.
然后修改选中的name值,比如"update addressbook set name='"+request.getParameter("t"+ab.GetId())+"' where id='"+ab.GetId()+"'"
这是最简单的动态表单修改,还有涉及表单动态校验和翻页等较难的情况.其实解决方法也和上面类似.