liferay portlet二次开发多个ajax数据传递

最近需要使用liferay,在进行portlet开发时需要使用到多个ajax数据的传递,现将代码粘帖如下:

也欢迎大家加入一起讨论群:427070805

portlet view.jsp代码如下:


<portlet:resourceURL var="ajaxUrl" >
<portlet:param name="p_p_resource_id" value="test1"/>
</portlet:resourceURL>
<script >
$(function(){
        $.ajax({
  type:'POST',
         url:'<%=ajaxUrl%>',
         data:{p_p_resource_id:'test1'},
         complete :function(){$("#load").hide();}, //AJAX请求完成时隐藏loading提示
         success: function(msg){
         alert(msg);
          }
  });

$('#test2').click(function(){

               $.ajax({
  type:'POST',
         url:'<%=ajaxUrl%>',
         data:{p_p_resource_id:'test2'},
         complete :function(){$("#load").hide();}, //AJAX请求完成时隐藏loading提示
         success: function(msg){
         alert(msg);
          }
  });

});
});

 

</script>


<input type="button" id="test2" value="test2">



后台接收方法如下:

public class villageTitlePortlet extends MVCPortlet {

//通过ajax提交到后台之后需重写些方法进行处理

@Override
public void serveResource(ResourceRequest resourceRequest,
ResourceResponse resourceResponse) throws IOException,
PortletException {
String resourceID=resourceRequest.getResourceID();
System.out.println("sssssssssss"+resourceID);
resourceResponse.setContentType("text/html;charset=UTF-8");
PrintWriter out=null;
out=resourceResponse.getWriter();
String result="这是test2服务端返回的结果信息";
if(resourceID.equals("test1")){
result="这是test1服务端返回的结果信息";
out.print(jsonString);
out.flush();
out.close();
}

out.print(result);
out.flush();
out.close();

super.serveResource(resourceRequest, resourceResponse);

}


}

注意:页面上ajax url对应的标签是portlet:resourceURL,而非actionURL。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值