stuts2 做的列表怎么在添加了多选框之后实现删除按钮----菜鸟求职,虽然也看到一些解决方法,但是没看懂-
-菜鸟求职,虽然也看到一些解决方法,但是没看懂-
我在列表中添加了一列的复选框,不知道怎么获取,被选中行的id,并传到后台,然后执行删除操作。
下面是我写的代码,求各位大神帮着下我这个小菜鸟吧:
<script type="text/javascript">
deletBut = function(obj)
{
var formObj = document.getElementById("listId");
alert(formObj);
var tbody = document.getElementById("planContId");
tbody.deleteRow(1);
//--------------
for(var i=0;i<formObj.arrivedSXBerth.length;i++)
if(formObj.arrivedSXBerth[i].checked){
formObj.hidRowid=formName.hidRowid+formName.hidRid[i].value+"%";
}
}
//--------------
alert(tbody);
formObj.action = "deletePlan";
formObj.submit();
}
addXH = function()
{
var tbody = document.getElementById("planContId");
var length= tbody.childNodes.length;
alert(document.onselect);
for(var i = 0 ; i < length ; i++)
{
tbody.childNodes
}
}
</script>
</head>
<body bgcolor="#FFFFE0" >
<table bgcolor="#F7FAF9" border="1" align="center" cellpadding="0" cellspacing="0" width="80%">
<thead align="center" valign="middle" >
<tr >
<td align="center" colspan="6">计划列表</td>
</tr>
<tr>
<td colspan="6" align="left">
<form name = "form1" id="listId" action="MainAction">
<input type="submit" value="新增" name = "add" id="add"/>
<input type="button" onclick="deletBut();" value="删除" name = "delete" id="delete"/>
<input type="button" onclick="addXH();" value="修改" name = "edit" id="edit"/>
</form>
</td>
</tr>
</thead>
<tbody id="planContId" >
<tr>
<td>序号</td>
<td></td>
<td>计划名称</td>
<td>计划内容</td>
<td>计划时间</td>
<td>计划登记人</td>
</tr>
<c:forEach items="${listPlans}" var="superplan" varStatus="status">
<tr bordercolor="#CBF7D7" border="1" >
<td width="24px" align="center">${status.count}</td>
<td width="24px"><input type="checkbox"/><input type="hidden" name=hidRid value=${superplan.planId}></td>
<td width="24px">${superplan.planName}</td>
<td width="24px">${superplan.planConten}</td>
<td width="24px">${superplan.time}</td>
<td width="24px">${superplan.userId}</td>
<td style="display: none;">${superplan.planId}</td>
</tr>
</c:forEach>
</tbody>
</table>
</body>
[解决办法]
String[] values=requst.getParameterValues("name");
获取选中的值
复选框的name的值要相同。。。
[解决办法]
不好意思 上面写错了 少个字母
String[] values=request.getParameterValues("name");
[解决办法]
在提交的到action 的方法里加上 String[] values=request.getParameterValues("name");
这个"name"就是你复选框上name的名称啊。
[解决办法]
LZ试试你JSP那个forEach那里,checkbox的位置加一个ID,ID的NAME可以check_box_?(?是你排列的行号,1,2,3...),然后在JAVASCRIPT里扫一下,有选中的都把ID放在一起,在调后台,
6楼的方法也可以
[解决办法]
<input type="checkbox"/>
改成
<input type="checkbox" name="ckId" value="${superplan.planId}"/>
delbBut()这样改
function deletes(){
var id = document.getElementsByName("ckId");
var i;
var str = "";
if(id.length != 0){
for(i=0;i<id.length;i++){
if(id[i].checked){
str=str+id[i].value+";";
}
}
if(str!=""){
window.location.href = "删除所对应的Action?id=" + str;
}else{
alert("请先选择要删除的邮件");
}
}
}