URLContentからページをロードするタブストリップがあります。
私は次のことを達成したいと思います:
- ターゲットURLのタブがすでに開いている場合は、新しいタブを追加する代わりに、既存のタブを選択します。
- 新しいタブの場合は、タブを動的に追加してロードします。
ドキュメントから、これを処理するデフォルトの方法はないようです。
http://docs.kendoui.com/api/web/tabstrip
また、タブインデックスを指定して、タブのID/名前を動的に取得する方法があるかどうかを知りたいです。
タブストリップを初期化する方法は次のとおりです。
<div class="mainContentTabStrip" style="width:100%;height:100%">
<kendo:tabStrip name="mainVerticalTabStrip">
<kendo:tabStrip-animation>
<kendo:tabStrip-animation-open effects="fadeIn" />
</kendo:tabStrip-animation>
</kendo:tabStrip>
</div>
次に、新しいタブを追加します。
function mainContentTreeView_onSelect(e)
{
var dataItem = $("#mainVerticalMenu").data("kendoTreeView").dataItem(e.node);
var selectedNodeText = dataItem.text;
var selectedNodeValue = dataItem.id;
var mainVerticalTabStrip = $("#mainVerticalTabStrip").data("kendoTabStrip");
mainVerticalTabStrip.append({
text: selectedNodeText +
" <img src='image/image/button_cancel.png' " +
"id='" + this.text(e.node) + "' " +
"name='" + this.text(e.node) + "' " +
"onclick='javascript:mainContentTreeView_delete()' " +
"onmouseover=" + this.text(e.node) + ".src='image/image/button_cancel_over.png' " +
"onmouseout=" + this.text(e.node) + ".src='image/image/button_cancel.png' " +
">",
encoded: false,
contentUrl: "screen/" + selectedNodeValue,
selected: true
});
}