Kendo UI tabStrip ウィジェットを使用して、次の 2 つのことを行います。
1) タブのコンテンツがすぐに表示されないため、最初のタブを自動選択します。
2) もちろん、特定の条件下で、最初のタブの contentUrl を交換します。
面白いことに、Html で k-content-urls ディレクティブを使用すると、最初のタブでコンテンツがすぐに読み込まれます。
元/
<div kendo-tab-strip k-content-urls="['myTemplate.html', 'myTemplate2.html']">
しかし、私はこのようにしたくありません。次のように、以下のアプローチを好みますk-options="settings.tabOptions"
コントローラー コードの tabOptions と、その下の HTML マークアップは次のとおりです。
settings.tabOptions = {
animation: { open: { effects: "fadeIn" } },
select: function (e) {
console.log("Selected: " + e.item.innerText);
// NOT WORKING..
e.sender.dataSource.options.data[0].contentUrl = "../myNewTemplate.html"
},
change: function (e) {
console.log("Changed: ");
},
activate: function (e) {
console.log("Activated: " + e.item.innerText);
},
show: function (e) {
console.log("Shown: " + e.item.innerText);
},
contentLoad: function (e) {
console.log("Content loaded in " + e.item.innerText);
},
dataTextField: "title",
dataContentUrlField: "contentUrl",
dataSource: [{
title: "Formatting",
contentUrl: '../app/shared/include/grid-config/gad-config-grid-prop.html'
},
{
title: "Dimensions",
contentUrl: '../app/shared/include/grid-config/gad-config-grid-dimen.html'
},
{
title: "Risk Measures",
contentUrl: '../app/shared/include/grid-config/gad-config-grid-riskmeasures.html'
}],
error: function (e) {
console.log("Loading failed with " + e.xhr.statusText + " " + e.xhr.status);
}
};
<div id="Gadgettabs" kendo-tab-strip="tabstrip" k-options="settings.tabOptions">
<ul>
<li class="k-state-active">Formatting</li>
<li>Dimensions</li>
<li>Risk Measures</li>
</ul>
</div>
ここでも、最初のタブのコンテンツをすぐに表示する必要があります。また、最初のタブのコンテンツを動的に変更する方法も理解します。
前もって感謝します...
ボブ
**** 更新 **** 上記のイベントで contentUrl を動的に変更しようとしていますが、うまくいきselect:
ません。