2013-05-15 2 views
0

IPC 사용 다른 포틀릿을 호출 중자바 스크립트 liferay에서 매개 변수 전달

내 문제는 숨겨진 필드에서 값을 전달하고 싶습니다.

나는 그것이 잘 작동

<%! public String projectid= "300015"; %>` 

<portlet:param name="projectid" value="<%= projectid%>" /> 

JSP scriplets를 할당하지만합니다.

는하지만 숨겨진 필드에서 값을 전달해야합니다

<input type="text" name="hiddenprojectidBox" id="hiddenprojectidBox"> 

<%= projectid%>

문제가 해결 장소에서. 그것은 다른 사람들을 도울 수 있습니다. 숨겨진 필드는 다음 코드 아래 자바 스크립트 API는 도움을 Liferay를 사용하여 IPC를 사용하는 경우

var portletURL = new Liferay.PortletURL('ACTION_PHASE'); 
      portletURL.setWindowState("maximized"); 
      portletURL.setPortletId("apseprojectmgmtportlet_WAR_apseprojectmgmtportlet") 
      portletURL.setParameter("_spage", "/apse-projectmgmt-portlet/apse-projectmgmt-portlet/projectCostingSheetAction2"); 
      portletURL.setPortletMode('view'); 
      portletURL.setParameter("projectid", projectid); 
      portletURL.setParameter("limit", 10); 
      portletURL.setParameter("offset", 0); 
      document.getElementById('myForm').action =portletURL.toString(); 
      document.getElementById('myForm').submit(); 
+0

질문을 자세히 설명해주십시오. –

+1

'portlet : param'은'<% @ taglib uri = "http://java.sun.com/portlet"prefix = "portlet"%>'에 의해 정의 된'JSP taglib '이므로 다음에 의해 평가됩니다. 서버 측의'JSP/Servlet'. 숨겨진 필드 또는 자바 스크립트에서 값을 전달하는 것은 불가능할 수 있습니다. –

+0

내 질문은 간단합니다. javascript 변수에서 projectid를 전달하고 싶습니다.

답변

0

의 필요 없음,

호출 포틀릿 자바 스크립트,

Liferay.fire('UPDATE_PROJECT', { 
    projectId : A.one('<portlet:namespace />hiddenprojectidBox'), 
}); 

받기 포틀릿 자바 스크립트

Liferay.on('UPDATE_PROJECT', function(data) { 
    // When event is being executed, getState of the selected countryCode via ajax call  using resourceURL 
    //data.projectId will give the value of the project id passed from calling portlet 
}); 
관련 문제