1

2 つのタブ ( ) を持つギャラリー アプリケーションを開発しています<aui:nav>。どちらにも同じ列の検索コンテナーが含まれています。 、アップロード日、画像など)。

メイン(最初の)タブで正常に機能している両方のテーブルに順序を追加しました。

ただし、テーブル ヘッダーをクリックして 2 番目のタブで並べ替えると、最初のタブにジャンプし、そこで並べ替えが機能します。例: アップロードした画像をアップロード日で並べ替えたいのですが、それをクリックすると、すべての画像が表示される最初のタブにジャンプしますが、現在は日付で並べ替えられています。

ポートレット アクションの後のように、「デフォルト」ビューに移動すると思いますが、その並べ替え呼び出しの mvcPath をオーバーライドする方法がわかりません。

EDIT:その間、タブナビゲーションを削除しましたが、それは問題の原因ではありません。基本的にはソートのrenderURLを設定すればいいのですが、方法がわからないので、ポートレットのデフォルトビューにジャンプします。より一般的に:

1.JSP はデフォルトのビューで、A、B、C の 3 つの列があります。並べ替えは機能します。2.JSP は別のビューで、同じ 3 つの列 (A、B、C) があります。A で並べ替えると、1.JSP が表示されますが、列 A で並べ替えられます (B と C も同じです)。

4

1 に答える 1

1

私はそれを理解しました:

まず、2.JSP で renderURL を設定する必要があります。

<%
    PortletURL iteratorUrl = (PortletURL) renderResponse.createRenderURL();
    iteratorUrl.setParameter("mvcPath", "/html/portletname/2.jsp");
%>

次に、この URL を検索コンテナーに追加します。

<liferay-ui:search-container iteratorURL="<%=iteratorUrl%>" {other parameters}>

そして今、デフォルトのビュー (1.JSP) ではなく、目的のページをレンダリングしています。

于 2016-01-20T07:55:11.170 に答える