タブベースの Web アプリケーションを構築しています。
AJAX 呼び出しの後に次のコードを使用して、JavaScript から新しいタブを読み込むことができます。
tabStrip.append(
{
encoded: false,
id: id,
text: name + html,
content: divData
});
しかし、起動時にいくつかのタブをロードする必要があり、ロードするタブの数がわかっている場合 (そして変更されていない場合)、Razor で次のように実行できます。
.Items(items =>
{
items.Add().Text("Home").Content(@Html.Action("Load","Home").ToHtmlString()).Selected(true);
items.Add().Text(Model[0].Name).HtmlAttributes(new { id = Model[0].Id.ToString(CultureInfo.InvariantCulture) }).Content(@Html.Action("Index", Model[0].Controller).ToHtmlString());
items.Add().Text(Model[1].Name).HtmlAttributes(new { id = Model[1].Id.ToString(CultureInfo.InvariantCulture) }).Content(@Html.Action("Index", Model[1].Controller).ToHtmlString());
}
しかし、BindTo 構文では、ここまでしか取得できません。
.BindTo(Model, (item, tab) =>
{
item.Text = tab.Name; //Needs to not be encoded!
item.ContentUrl = tab.Url;
item.Id = Id does not exist!
or
item.HtmlAttributes = cannot be set!
})
残念ながら、KendoUI の Web サイトには、最も基本的なもの以外の良い例はありません。