我在liferay的自定义portlet中有一个html表。 我想在点击该特定列时提供编辑功能 我知道liferay-ui:搜索容器提供这样的功能但是我正在使用我的html表和一些jquery for this ..所以在那个特定的列的悬停我有一个编辑图标,我希望点击那个编辑图标我将重定向到编辑页面。但我想要的是如何获得该行的主键的编辑图标被选中.. ??
我有关于图标显示的jquery和重定向到编辑页面
<script>
$(document).ready(function() {
$(".editable").hover(function(){
$(this).append("<i class='splashy-pencil_right'></i>")
}, function(){
$(this).children("i").remove();
});
$(".editable").click(function(){
$.colorbox({
initialHeight: '0',
initialWidth: '0',
href: "#confirm_dialog",
inline: true,
opacity: '0.3',
onComplete: function(){
$('.confirm_yes').click(function(e){
e.preventDefault();
window.location.href = "<%=editURL.toString() %> ";
$.colorbox.close();
});
$('.confirm_no').click(function(e){
e.preventDefault();
$.colorbox.close();
});
}
});
});
//* show all elements & remove preloader
setTimeout('$("html").removeClass("js")',1000);
});
</script>
以下是我想要重定向的portletaction网址
<portlet:actionURL name="editRestaurant" var="editURL">
<portlet:param name="key" value="<%=restId%>" />
</portlet:actionURL>
以下代码属于我的视图类,其中主键值(restID)作为隐藏字段。
<form action="<%=editURL.toString() %>" method="post">
<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>Emenu</th>
<th>Status</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 style="visibility: hidden;"><input type="text" name="primerykey" value="<%= temprest.getPrimaryKey()%>"></td>
<td class="editable"><%=temprest.getName() %></td>
<td><%=temprest.getContactno() %></td>
<td><%=temprest.getWebsite() %></td>
<td><%=temprest.getNoofemenuagent() %></td>
<td><a href="#" class="pop_over" data-content="Ad Displayed on </br> <b>Restaurant</b> : ABC" data-original-title="( Ad name )" data-placement="left">Pending</a></td>
</tr>
</tbody>
那么如何将这个单击的行或列值传递给edit_restaurant.jsp页面?
答案 0 :(得分:2)
创建链接并将id添加为参数
<% PortletURL link = RenderResponse.createRenderURL();
link.setParameter("paramName", "paramValue");
link.setParameter("jspPage", "/page.jsp"); %>
使用链接:
<a href="<%= link.toString() %>">LinkText</a>
在jsp上你可以使用这个参数mvc方式使用:
ParamUtil.getString(ActionRequest, "paramName");