Нетерпеливая загрузка в Kendo Tabstrip

Я использую метод LoadContentFrom из Kendo 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') возвращает массив всех вкладок.


person Akbari    schedule 11.01.2016    source источник


Ответы (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)

person joaumg    schedule 11.01.2016
comment
Спасибо за ответ, но я не об этом спрашивал. Я знаю, как инициализировать вкладку, и мой вопрос также содержит код, я хотел бы загрузить все вкладки ajax сразу, а не по требованию и после щелчка пользователя. - person Akbari; 12.01.2016
comment
@Akbari, если вы хотите быстро загрузить полосу вкладок, вам нужно получить содержимое, а затем инициализировать его, это, очевидно, приведет к тому, что больше контента будет отправлено в браузер пользователя, теперь, если вы хотите фальшивую активную загрузку (загрузить первую вкладку, отложить другие вкладки), которые вы можете сделать с небольшим количеством javascript с чем-то вроде .reload ( docs.telerik.com/kendo-ui/api/javascript/ui/ ) - person joaumg; 12.01.2016