設置
我有一個Telerik的劍道UI TabStrip控件與一個UpdatePanel內多個標籤...我如何重新選擇KendoUI TabStrip控件AJAX回發後在UpdatePanel的
<asp:UpdatePanel ID="DataDetails_Panel" UpdateMode="Conditional" runat="server">
<div id="ABIOptions_TabContainer">
<ul>
<li>Attendance</li>
<li>Grades</li>
<li>Gradebook</li>
<li>PFT</li>
<li>Scheduling</li>
<li>Miscellaneous</li>
<li>Parent Data Changing</li>
</ul>
</div>
</asp:UpdatePanel>
...這然後我線了在JavaScript後...
var optionTabContainer = $("#ABIOptions_TabContainer").kendoTabStrip({
animation: {
open: {
effects: "fadeIn"
}
},
select: onMainTabSelect
}).data("kendoTabStrip");
方案
用戶將點擊VAR每個選項卡和每個選項卡的內部都是我們門戶的設置。當他們在標籤和他們進行了更改設置,期望的是,他們要點擊「保存」按鈕,將通過AJAX執行回發到服務器,因爲它是在更新面板。
當前行爲
之後,該帖子後面發生和ul
含量回來,我重新應用kendoTabStrip設置函數調用,這使得沒有選擇的選項卡。當用戶看到內容時,它就會顯示爲空白頁面。
所需的結果
我想要做的,是部分回發發生,在UpdatePanel發回ul
,我想重新選擇用戶先前選定的標籤後。
那些已經工作
我已經有一個保存方式,用戶點擊標籤:
var onMainTabSelect = function (e) {
tabToSelect = e.item;
console.log("onTabSelect --> ", e.item.textContent);
}
和功能重置所選標籤時,它被稱爲:
function setMainTab() {
if (!jQuery.isEmptyObject(tabToSelect)) {
var tabStrip = $('#ABIOptions_TabContainer').data("kendoTabStrip");
console.log("Attempt to set tab to ", tabToSelect.textContent);
tabStrip.select(tabToSelect);
} else {
console.log("tabToSelect was empty");
}
}
什麼不起作用 我的假設是Kendo TabStrip說,「嘿,那個標籤已經是s當選」當我打電話的setMainTab
我回發後:
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function() {
BindControlEvents();
setMainTab();
});
...,因此,不把我的標籤了。如果我點擊選項卡,然後噗,我的所有內容在那裏就像我的期望。
任何想法我可能做錯了什麼?