0

我有一个代表 7 个工作日的 jQuery UI 选项卡。唯一的问题是页面第一次加载时,星期一是活动标签。我也可以使用active: 3更改活动页面,但我不希望活动选项卡被修复。我提供了一个具有日期值的隐藏字段。

@Html.Hidden("day", day)

那么如何以编程方式设置活动页面?

<script type="text/javascript">
  $(function() {
      $("#tabs").tabs();
  });
</script>

感谢您的帮助

4

2 回答 2

2

您不想修复它,所以我假设您在模型中有所需的活动日。如果是这样,你可以这样做

$('#tabs').tabs({ selected: '@Model.ActiveDay' });

这是一种古老的做法(来自一个旧项目)。根据本文档,(最新和)正确的做法是这样的:

$("#tabs").tabs({ active: '@Model.ActiveDay' })

请记住,它是从零开始的,因此请确保您days也是从零开始的,如果不是,则相应地分配值(例如,如果您的日子从一开始,则执行 -1)

于 2013-05-07T02:18:48.597 回答
1

如果您提供一个隐藏字段,在服务器端生成并填充来自服务器的值,然后您想使用 JavaScript 读取隐藏字段的值并相应地设置选项卡的活动状态,您可能也只需在服务器上生成的 HTML 标记中设置活动状态,然后再将其发送到客户端。

您可以通过将以下类添加到li您希望从一开始就处于活动状态的类来做到这一点ui-tabs-active ui-state-active

此外,您必须style="display: block"div连接到要激活的选项卡的选项卡上进行设置,并将div'saria-expanded属性设置为true,并将aria-hidden属性设置为false.

那应该是诀窍。

于 2013-05-07T02:23:00.783 回答