我正在开发自定义 portlet,在我的一个视图页面中我需要一些帮助。
以下是我的表格,其中每一行都有复选框,每一行都将在运行时(动态)创建:
<form method="post" name="editform">
<table class="table table-bordered table-striped" id="dt_gal_res">
<thead>
<tr>
<th class="table_checkbox"><input type="checkbox"
name="select_rows" class="select_rows"
data-tableid="dt_gal_rest" /></th>
<th>Name</th>
<th>Contact Person</th>
<th>Website</th>
<th>EDIT</th>
<th>DELETE</th>
</tr>
</thead>
<%
List<restaurant> rest_listOBJ = restaurantLocalServiceUtil.getAllAvailableRestaurant();
for (int i = 0; i < (rest_listOBJ.size()); i++) {
restaurant temprest = rest_listOBJ.get(i);
%>
<tbody>
<tr>
<td><input type="checkbox" name="row_sel" class="row_sel" /></td>
<td><%=temprest.getName() %></td>
<td><%=temprest.getContactno() %></td>
<td><%=temprest.getWebsite() %></td>
<td>
<input type="submit" id="1" value="edit"
onclick="return getbuttonId('<%=temprest.getPrimaryKey() %>')" />
</td>
<td>
<input type="submit" id="2" value="DELETE"
onclick="return getdeletebuttonId('<%=temprest.getPrimaryKey() %>')" />
</td>
</tr>
</tbody>
<%
}
%>
</table>
<div style="visibility: hidden;">
<input type="hidden" name="hide1" id="hiddenkey" value="">
</div>
</form>
现在我有删除按钮,通过其他一些逻辑,我正在逐行删除。
但是现在我想要的是,在我提交一个按钮时选择一个或多个行的复选框后,然后单击该一个按钮,我想删除选中复选框的所有行。
不知何故,如果有人可以指导我如何在我的 portlet 类的操作方法中获取选定复选框列表的列表,那么即使这对我来说也足够了。
我对jsp很陌生,所以有任何想法的人请建议我。
正如你所建议的那样,我已经做了同样的事情。但没有取得任何成功..请纠正我哪里错了这是我的行动课
public void deleteMultipleRestaurant(ActionRequest ar, ActionResponse ap)
throws Exception {
log.info("ENTERED");
List<restaurant> restaurants = restaurantLocalServiceUtil.getAllAvailableRestaurant();
for (restaurant restaurantitem : restaurants) {
if (Boolean.valueOf(ar.getParameter("row_sel" + restaurantitem.getPrimaryKey()))) {
// This is a selected checkbox so add you remove code here
log.info(restaurantitem);
restaurantitem.setIsdeleted(true);
restaurantLocalServiceUtil.updaterestaurant(restaurantitem);
}
}
}
在我的视图文件中,我正在执行以下操作
这是我的 ul 之一,我的删除链接在那里
<portlet:actionURL name="deleteMultipleRestaurant"
var="multideleteURL">
</portlet:actionURL>
<button data-toggle="dropdown" class="btn dropdown-toggle">
Action <span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li><aui:button name="DELETE" value="DELETE" onClick="<%=multideleteURL.toString() %>"/></li>
<li><a href="javascript:void(0)">Lorem ipsum</a></li>
<li><a href="javascript:void(0)">Lorem ipsum</a></li>
</ul>
以下是查看页面
<tbody>
<%
List<restaurant> rest_listOBJ = restaurantLocalServiceUtil
.getAllAvailableRestaurant();
for (int i = 0; i < (rest_listOBJ.size()); i++) {
restaurant temprest = rest_listOBJ.get(i);
%>
<tr>
<td><input type="checkbox" id="row_sel<%= temprest.getPrimaryKey() %>" name="<portlet:namespace/>row_sel<%= temprest.getPrimaryKey() %>" class="row_sel" />
</td>
<td><%=temprest.getName()%></td>
<td><%=temprest.getContactno()%></td>
<td><%=temprest.getWebsite()%></td>
<td><input type="button" id="1"
onclick="return getbuttonId('<%=temprest.getPrimaryKey()%>')"
style="border:none;width:20px" class="icon-pencil"/>
<input type="button" id="2"
onclick="return getdeletebuttonId('<%=temprest.getPrimaryKey()%>')"
style="border:none;width:20px" class="icon-trash" /></td>
</tr>
<%
}
%>
</tbody>
但什么都没有得到..它只是重新加载页面..只是 dat