【问题标题】:Eager loading in Kendo Tabstrip在 Kendo Tabstrip 中急切加载
【发布时间】:2016-01-11 10:10:01
【问题描述】:

我正在使用Kendo TabStripLoadContentFrom 方法,它允许tabstrip 从另一个action method 加载内容。

仅当用户单击链接、选项卡时才会加载内容,因此它会导致我想避免的短暂延迟。我找不到任何方法来启用此控件的预加载并一次加载所有选项卡。欢迎任何建议或解决方法。

这是一个示例标签条:

@(Html.Kendo().TabStrip()
    .Name("tabstrip")
    .Animation(false)
    .SelectedIndex(0)
            .Items(i =>
            {
                i.Add()
                    .Text("Action1")
                    .LoadContentFrom("Action1", "Controller");
                i.Add()
                    .Text("Action2")
                    .LoadContentFrom("Action2", "Controller");
                i.Add()
                    .Text("Action3")
                    .LoadContentFrom("Action3", "Controller");
            })
)

更新

感谢@joaumg,这是我正在使用的 JS 代码:

$('#tabstrip').data().kendoTabStrip.reload($('#tabstrip ul li'))

Reload 方法完成工作并加载选项卡,$('#tabstrip ul li') 选择器返回所有选项卡的数组。

【问题讨论】:

    标签: kendo-ui kendo-asp.net-mvc kendo-tabstrip


    【解决方案1】:

    有3种方法...

    首先,生成HTML并调用$("#tabstrip").kendoTabStrip();

    其次,生成一个 JSON,并将其传递为 dataSource

    两者都使用客户端,可以在这里看到:http://docs.telerik.com/kendo-ui/web/tabstrip/overview#initialize-the-tabstrip

    服务器端使用 TabStrip HtmlHelper,可在此处找到该文档:http://docs.telerik.com/kendo-ui/aspnet-mvc/helpers/tabstrip/overview#tabstrip(查看 .Items.Content 方法)

    【讨论】:

    • 感谢您的回答,但这不是我要问的。我知道如何初始化 tabstrip,我的问题也包含代码,我想一次加载所有 ajax 选项卡,而不是在用户点击后按需加载。
    • @Akbari,如果你想立即加载标签条,你需要获取内容然后初始化它,这显然会导致更多内容被推送到用户的浏览器,现在,如果想要一个“虚假急切加载”(加载第一个选项卡,延迟其他选项卡),您可以使用一些 JavaScript 来完成类似 .reloaddocs.telerik.com/kendo-ui/api/javascript/ui/…)的操作
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-25
    • 2021-09-29
    • 1970-01-01
    相关资源
    最近更新 更多