在我继承的一个项目中,我有一个名为 SpendSummContainer 的控件。这个控件有一个 jquery-ui 选项卡对象。其中一项要求是,在其中一个列处于编辑模式后,选定的选项卡保持选中状态(该列具有执行 DoPostBack 并将列置于编辑模式的“编辑”链接)。
以下所有内容均来自 SpendSummContainer 控件。
这些选项卡是标准的 jquery-ui 选项卡,如下所示:
<div id="tabs">
<ul>
<li><a href="#tabs-1">First Tab</a></li>
<li><a href="#tabs-2">Second Tab</a></li>
<li><a href="#tabs-3">Third Tab</a></li>
</ul>
<div id="tabs-1">Stuff goes here</div>
<div id="tabs-3">Stuff goes here</div>
<div id="tabs-2">Stuff goes here</div>
</div>
然后,我在表单上有一个 ASP.NET 隐藏字段,
<asp:HiddenField ID="activeTab" runat="server" />
最后,我有以下 javascript,
<script type="text/javascript">
$(document).ready(function () {
$("#tabs").tabs({
select: function (event, ui) {
$('#<%= activeTab.ClientID %>').val(ui.index.toString());
}
});
});
</script>
我已经通过在设置值后提醒该值来验证隐藏字段是否正确填充。
问题是执行 DoPostBack 时,activeTab.value 属性为空。
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim selectedTab As string = activeTab.Value
End Sub
所以我的问题是,如何在 DoPostBack 之后保持隐藏字段的值?
谢谢。