【问题标题】:How to use two (multiple) Liferay UI Search Container tags in a single JSP如何在单个 JSP 中使用两个(多个)Liferay UI Search Container 标签
【发布时间】:2012-07-17 12:49:38
【问题描述】:

我需要在一个 JSP 中使用两个不同的 <liferay-ui:search-container> 标签。

如果我们使用两个<liferay-ui:search-container> 标签,分页就会出现问题:

  1. 当我点击第一个<liferay-ui:search-container>标签的第三页时,第二个<liferay-ui:search-container>标签也移动到第三页。

  2. 1234563第 1 页。

它们应该相互独立。

环境:Liferay 6.+

【问题讨论】:

    标签: liferay liferay-6


    【解决方案1】:

    我发现了两种不同的方法:

    1. 这可以通过在<liferay-ui:search-container>标签中使用curParam属性来实现,注意到以下代码中的curParam="folderCurParam"curParam="fileCurParam",我通过liferay的源代码@找到了这种方式987654326@和docroot/html/portlet/document_library_display/view_file_entries.jspf

      <liferay-ui:search-container
              curParam="folderCurParam"
              emptyResultsMessage="no-folders-to-display"  
              iteratorURL="<%= portletURL %>"
              delta="10">
      
          <liferay-ui:search-container-results
                  results="<%=folderResults %>"
                  total="<%= folderTotal %>" />
      
          <liferay-ui:search-container-row
                  className="com.liferay.portal.kernel.repository.model.Folder"
                  keyProperty="userId"
                  modelVar="folder">
      
              <liferay-ui:search-container-column-jsp align="left"
                      path="/html/documentdisplay/folder_search_results.jsp" />
      
          </liferay-ui:search-container-row>
      
          <liferay-ui:search-iterator />
      
      </liferay-ui:search-container>
      
      <liferay-ui:search-container
              curParam="fileCurParam"
              emptyResultsMessage="no-files-to-display" 
              iteratorURL="<%= portletURL %>"
              delta="10">
          <liferay-ui:search-container-results
                  results="<%=fileResults %>"
                  total="<%= fileTotal %>" />
      
          <liferay-ui:search-container-row
                  className="com.liferay.portal.kernel.repository.model.FileEntry"
                  keyProperty="userId"
                  modelVar="fileEntry">
      
              <liferay-ui:search-container-column-jsp align="left"
                      path="/html/documentdisplay/files_search_results.jsp" />
      
          </liferay-ui:search-container-row>
      
          <liferay-ui:search-iterator />
      
      </liferay-ui:search-container>
      
    2. 我在 liferay 的源代码 docroot/html/portlet/journal/select_document_library.jsp 中再次找到了这个,它使用 SearchContainer constructor 来设置 curParam,注意参数 "cur1" 用于文件夹和文件是 @987654333 @:

      // for folders
      SearchContainer searchContainer = new SearchContainer(renderRequest, null, null, "cur1", SearchContainer.DEFAULT_DELTA, portletURL, headerNames, "there-are-no-folders");
      
      // for files
      searchContainer = new SearchContainer(renderRequest, null, null, "cur2", SearchContainer.DEFAULT_DELTA, portletURL, headerNames, "there-are-no-documents-in-this-folder");
      

    希望这对某人有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-21
      • 2019-02-07
      • 1970-01-01
      相关资源
      最近更新 更多