如何在回发上保留选定的选项卡或以编程方式调用之前激活方法
本文关键字:方式 编程 调用 方法 激活 选项 保留 | 更新日期: 2023-09-27 18:32:55
我在 c# 上创建了一个自定义控件,以具有多个具有不同形式的选项卡。我有两个视图:预览视图(禁用所有输入)和编辑视图。我可以轻松浏览选项卡,但是当我单击编辑按钮时,它会触发回发,然后所选选项卡返回到第一个可用的选项卡。
是否可以在回发时保留选定的选项卡?
C# 代码:
public string GetStartupScript()
{
StringBuilder str = new StringBuilder();
str.AppendFormat("$('"#{0}'")", this.ClientID);
str.Append(".tabs({ beforeActivate: function(e,ui) {");
str.Append(CustomJSInSelectedTab);
str.Append(GetSetSelectedTabIndexScript());
str.Append("}");
str.Append("}");
return str.ToString();
}
public string GetSetSelectedTabIndexScript()
{
StringBuilder script = new StringBuilder();
script.AppendFormat("SelectTab(ui.newPanel,'{0}');", _hdnSelectedTabId.ClientID);
return script.ToString();
}
Javascript代码:
SelectTab = function (newpanel, hdnIndexId) {
$("#" + hdnIndexId).val($(newpanel.selector)[0].id);
}
当我单击其他选项卡时,它会调用 beforeActivate 方法来解决问题。我可以通过编程方式调用该函数吗?或者这是一个硬编码的解决方法?
提前谢谢。
由于您已经在隐藏字段上跟踪了选定的选项卡,因此您所要做的就是在代码中添加"active",如下所示:
active: <%= hdnSelectedTab.Value %>
如果你解决了,给我反馈。