<script language="javascript">
<!--
function del(form) <!--function del(form)-->
{
if(confirm("您确信要删除吗?")){
var count = 0;
var titels= "";
var topicTitles = document.getElementsByName("checkbox");
for (var i = 0; i < topicTitles.length; i++) {
if (topicTitles[i].checked) {
titels+= topicTitles[i].value + ",";
count ++;
}
}
if (count <= 0) {
alert("至少要选择一条数据");
return;
}
window.location="del.jsp?checkbox="+titels;
}
}
</script>
</head><body><form action="del.jsp" method="post" name="form" >
<table width="500" height="507" cellspacing="10" align="center">
<% sql="SELECT * FROM topicInfo";
rs=smt.executeQuery(sql);
while(rs.next())
{%>
<tr>
<td width="439"><input type="checkbox" name="checkbox" value=<%=rs.getInt("topicid")%> /><%=rs.getString("topictitle")%></td>
<td width="205"><%=rs.getString("topicuserid")%></td>
<td width="158"><%=rs.getTime("topictime")%></td>
</tr><%}%>
<tr>
<td height="60" align="center"><font size="4" color="#FF0000">发帖 </font></td>
<td colspan="2" align="center"><font size="4" color="#FF0000"><a href="javascript:del(this.form)">删除</a></font></td>
</tr>
</table>
</form>
传递到 del.JSP页面后 怎样分割checkbox的值
<!--
function del(form) <!--function del(form)-->
{
if(confirm("您确信要删除吗?")){
var count = 0;
var titels= "";
var topicTitles = document.getElementsByName("checkbox");
for (var i = 0; i < topicTitles.length; i++) {
if (topicTitles[i].checked) {
titels+= topicTitles[i].value + ",";
count ++;
}
}
if (count <= 0) {
alert("至少要选择一条数据");
return;
}
window.location="del.jsp?checkbox="+titels;
}
}
</script>
</head><body><form action="del.jsp" method="post" name="form" >
<table width="500" height="507" cellspacing="10" align="center">
<% sql="SELECT * FROM topicInfo";
rs=smt.executeQuery(sql);
while(rs.next())
{%>
<tr>
<td width="439"><input type="checkbox" name="checkbox" value=<%=rs.getInt("topicid")%> /><%=rs.getString("topictitle")%></td>
<td width="205"><%=rs.getString("topicuserid")%></td>
<td width="158"><%=rs.getTime("topictime")%></td>
</tr><%}%>
<tr>
<td height="60" align="center"><font size="4" color="#FF0000">发帖 </font></td>
<td colspan="2" align="center"><font size="4" color="#FF0000"><a href="javascript:del(this.form)">删除</a></font></td>
</tr>
</table>
</form>
传递到 del.JSP页面后 怎样分割checkbox的值
aa=checkbox.split(",");
for(int i=0;i<checks.length();i++){
......
}
Cannot invoke split(String) on the array type String[]
这是提示的错误
你的checkbox 肯定是以“,”结尾
你得处理掉那个末尾的“,”
最好的方法是在生成字符串时
...
if (topicTitles==null) {
alert("至少要选择一条数据");
return;
}
window.location="del.jsp?checkbox="+titels;
}
titels=topicTitles[0].value;
for (var i = 1; i < topicTitles.length; i++) {
if (topicTitles[i].checked) {
titels+=","+topicTitles[i].value ;
}
}
...
你可以借鉴一下
String[] st = request.getParameter("checkbox").split(",");
即可。getParameterValues方法本身会返回一个String数组。你那里是用window.location转进的,url只有一个checkbox参数,不需要用这个方法。
我是个莱鸟啊 怎么用 SSH啊?
因为你组装了,所以参数只有一个的了,真正的checkbox是多个同名参数的.
你这样子是checkbox=a,b,c,d,
参数只是有一个,那就是checkbox,值是"a,b,c,d,"至于你再分出来那就是另一个回事了.