我在我的網站上有ajaxToolKit:TabContainer
。我有三個選項卡,每個Product
以某種形式填充(說明,附加信息,評論)。如果產品符合特定標準,我也有三個動態創建的其他選項卡,並將其加載到選項卡容器中。當我加載這三個動態標籤時,我遇到了一個問題。Ajax標籤容器顯示不正確的文字
當我加載選項卡時,Description
選項卡中的文本顯示在所有其他選項卡中,直到我單擊Description
選項卡,然後它從所有其他選項卡中消失。
它發生在我真正關心的所有瀏覽器中(Chrome,IE,FF)。 html
標記在查看源代碼時,其文本在正確的div
和tab panel
之內,但由於某些原因顯示不正確。
這是我如何加載控件後面的代碼並將它們添加容器:
TabPanel overviewTab = new TabPanel();
ProductOverviewInfo control = (ProductOverviewInfo)Page.LoadControl("~/Controls/ProductOverviewInfo.ascx");
control.overview_populate();
overviewTab.Controls.Add(control);
overviewTab.HeaderText = "OVERVIEW";
ProductTabs.Controls.AddAt(firstVisibleTab, overviewTab);
firstVisibleTab
只是一個int值決定,我要插入選項卡。
現在,我找到了一個解決方案,但這不是我想要的,也不是我的項目贊助商想要的。如果我只是使用ProductTabs.Control.Add(tab)
那麼我沒有問題。但是,如果產品符合具有總覽選項卡的標準(上面的代碼),我希望該選項卡處於活動狀態。
現在,您可能會問,爲什麼您不使用.Add(tab)
,然後將ActiveTabIndex
放在您插入新選項卡的位置。那麼,我試過這個,出於某種原因,當我做檢查時(或者直接將它添加到上面的代碼中),整個TabContainer
根本不會顯示。
因此,在我正在使用的產品的大約一半中,我遇到了此文本顯示在錯誤標籤中的問題,另一半沒有問題,因爲沒有概覽選項卡(或其他2個動態加載標籤)存在。