diff --git a/core/src/main/scala/org/apache/spark/ui/PagedTable.scala b/core/src/main/scala/org/apache/spark/ui/PagedTable.scala
index 06b64c1d1250..008dcc6200d3 100644
--- a/core/src/main/scala/org/apache/spark/ui/PagedTable.scala
+++ b/core/src/main/scala/org/apache/spark/ui/PagedTable.scala
@@ -115,17 +115,18 @@ private[spark] trait PagedTable[T] {
_dataSource.pageSize
}
- val pageNavi = pageNavigation(pageToShow, pageSize, totalPages)
+ val pageNaviTop = pageNavigation(pageToShow, pageSize, totalPages, tableId + "-top")
+ val pageNaviBottom = pageNavigation(pageToShow, pageSize, totalPages, tableId + "-bottom")
- {pageNavi}
+ {pageNaviTop}
{headers}
{data.map(row)}
- {pageNavi}
+ {pageNaviBottom}
} catch {
case e: IndexOutOfBoundsException =>
@@ -171,7 +172,11 @@ private[spark] trait PagedTable[T] {
* > means jumping to the next page.
* }}}
*/
- private[ui] def pageNavigation(page: Int, pageSize: Int, totalPages: Int): Seq[Node] = {
+ private[ui] def pageNavigation(
+ page: Int,
+ pageSize: Int,
+ totalPages: Int,
+ navigationId: String = tableId): Seq[Node] = {
// A group includes all page numbers will be shown in the page navigation.
// The size of group is 10 means there are 10 page numbers will be shown.
// The first group is 1 to 10, the second is 2 to 20, and so on
@@ -214,7 +219,7 @@ private[spark] trait PagedTable[T] {