У меня есть три вкладки, каждая из которых имеет кнопку «Отправить», вызывающую обратную запись. После события click для кнопки отправки я хочу, чтобы текущая вкладка сохранялась.
Шаг 1.
Добавлен asp: HiddenField внутри div вкладок (div «tabs» содержит все три div, которые содержат содержимое для моих вкладок).
<asp:HiddenField ID="sel_tab" Value="" runat="server" />
Шаг 2.
Обновлено значение sel_tab с событием нажатия каждой кнопки, которая вызывает отправку назад.
protected void cmdSaveDailyMeasure_Click(object sender, EventArgs e)
{
sel_tab.Value = "0";
}
protected void cmdSaveWeeklyMeasure_Click(object sender, EventArgs e)
{
sel_tab.Value = "1";
}
protected void cmdSaveMonthlyMeasure_Click(object sender, EventArgs e)
{
sel_tab.Value = "2";
}
Шаг 3.
В моем файле .js у меня есть следующий код
// Tabs
$(document).ready(function() {
var iSelectedTab = $(this).find("input[id*='sel_tab']").val();
if (iSelectedTab == null)
iSelectedTab = 0;
$('[id$=tabs]').tabs({ selected: iSelectedTab });
});
Это работает, даже если вы используете мастер-страницы (я). Не требуется часть <% = foo.ClientID%>.