2013-07-17 83 views
0

我想知道我是否可以使用KendoUI控制tabstrip的屬性aria-controlsKendoUI Tabstrip詠歎調控件

事實上,我想改變它manualy選擇不同的div,我不知道爲什麼它不工作:

<ul class="k-tabstrip-items k-reset"> 
<li class="k-state-active k-item k-tab-on-top k-state-default k-first" role="tab" aria-selected="true" aria-controls="tabstrip-1"> 
<a class="k-link">Baseball</a> 
</li> 
<li class="k-item k-state-default" role="tab" aria-controls="tabstrip-2"> 
<a class="k-link">Golf</a> 
</li> 
</ul> 

對控制div S:

<div class="k-content k-state-active" id="tabstrip-1" role="tabpanel" aria-expanded="true" style="display: block;"> 
    <p>text1</p> 
</div> 
<div class="k-content" id="tabstrip-2" role="tabpanel" aria-hidden="true" aria-expanded="false"> 
    <p>Text 2</p> 
</div> 

我想通過更改第一個選項卡(tabstrip-1tabstrip-2)的aria-controls,它會更改div的選擇。

有誰知道爲什麼這是不可能的?我能做些什麼來做到這一點?

+0

你是不是想programmati cally更改活動選項卡?有一個API調用「select(jQuery對象或索引)」,它將更改活動選項卡。 – Igorrious

+0

是的。但是在一個標籤中我有一個表單(在ajax中)。當我提交表格時,我選擇一個新標籤。問題是:在提交之前,如果我添加一個帶有「InsertAfter」的新選項卡。 Kendo更改標籤的索引。所以,我必須更改「ajax-update」選項以選擇正確的選項卡。 – user2591454

+0

您也可以嘗試通過匹配標籤的標題文字來選擇標籤。 var tabStrip = $(「#tabs」)。data(「kendoTabStrip」); tabStrip.select(tabStrip.tabGroup.children(「li:contains('NewTab')」)) – Igorrious

回答

0

使用accesskey屬性和方法keypress

<a id="foo" href="some url" accesskey="1">My link</a> 
<script> 
function keyHandler(e) 
    { 
    if (e.altKey && e.keyCode == 87) 
    { 
    $("#tabstrip").focus(); 
    } 
    } 

$(document.body).keypress(keyHandler); 
</script> 

參考