正如标题所提到的,我想知道是否有一种相对简单的方法来使用该功能来编辑portlet中的portlet标题。
也就是说,当单击portlet中包含的span时,它将变为可编辑(通过输入框),以便更新portler首选项。
这可以从头开始,但由于Liferay中已经存在功能,因此可能有一种方法可以使用它。
答案 0 :(得分:0)
是的,您可以通过简单的ajax调用更新Portlet
标题。
PFB示例jQuery
代码和要发送以更新Portlet标题的必需参数。
$.ajax({
url: "/c/portlet_configuration/update_title",
method: "POST",
data: { p_auth:'vcYb1DvX',
p_l_id:'10187',
portletId:'56_INSTANCE_hbJBswwx0rYg',
title:'My Webcontent'
},
success: function(data){
},
error: function(jqXHR, textStatus, errorThrown) {
}
});
答案 1 :(得分:0)
听起来你想要一个“In Place Editor”。对于YUI(这是AlloyUI的底层JS库,捆绑在Liferay中),我得到的第一个命中是this project,但是使用这个搜索词,你将能够找到最适合你需求的组件。 / p>
答案 2 :(得分:0)
我没有清楚地理解你的问题。不过,我正在回答你的问题。 在我的项目中,我们提供自定义标题,我们将使用以下代码获取在首选项页面的文本框中输入的名称来更新portlet的自定义portlet标题: //在动作方法中编写此代码
PortletPreferences preferences = actionRequest.getPreferences();
String portletTitle= actionRequest.getParameter("portletTitle"); (title entered in text box)
preferences.setValue("portlet-setup-title-en_US",portletTitle); // update the portlet title of the portlet
preferences.setValue("portlet-setup-use-custom-title","true");// setting to receive custom title
preferences.store(); //stores the preference
希望这有帮助