Я создаю веб-страницу с несколькими вкладками. Для этого я использую калитку AjaxTabbedPanel
и несколько AbstractTab
. В каждой вкладке у меня есть таблицы с данными, и я использую сценарий javascript для сортировки таблиц.
public TabbedPage() {
List<ITab> tabs = new ArrayList<ITab>();
tabs.add(new AbstractTab(new Model<String>("first tab")) {
public Panel getPanel(String panelId) {
return new TablePanel(panelId);
}
});
tabs.add(new AbstractTab(new Model<String>("second tab")) {
public Panel getPanel(String panelId) {
return new TablePanel(panelId);
}
});
add(new AjaxTabbedPanel("tabs", tabs));
}
Когда я загружаю страницу, таблица на выбранной по умолчанию вкладке сортируется. Однако, как только я нажимаю на любую из ссылок, чтобы перейти к другим вкладкам (включая одну из уже выбранных вкладок), ни одна из таблиц на любой из вкладок не позволяет мне отсортировать их (включая ту, которая ранее работала - таблица на вкладке по умолчанию). Если я обновлю страницу, я смогу отсортировать таблицу (из вкладки, выбранной в момент обновления), но как только я нажму на любую из ссылок для переключения вкладок, таблицы снова перестанут иметь возможность сортировки. Есть идеи, почему это происходит?
EDIT:
Я только что обнаружил, что если я заменю AjaxTabbedPanel
на TabbedPanel
, у меня нет этой проблемы. Хотя я до сих пор не уверен, почему это так. Может ли кто-нибудь просветить меня?
add(new TabbedPanel("tabs", tabs));