2012-10-16 43 views
0

我有一個標籤容器中的一組選項卡,我可以自由移動之間通過手動點擊標籤或通過使用JavaScript;但是,我想要做的是使用ASP.NET服務器端按鈕在標籤之間切換。如何通過點擊ASP.NET按鈕服務器端切換到不同的ajax?

所以這裏的佈局。選項卡1有一個ASP.NET按鈕,單擊它時,應該轉到選項卡2並在GridView中顯示查詢結果。下面是ASP.NET按鈕的onclick代碼:

protected void btnOutstandingTasks_Click(object sender, EventArgs e) 
    { 
     try 
     { 
      // Load task list by all outstanding tickets 
      SqlDSOutstanding.SelectParameters.Clear(); 
      SqlDSOutstanding.SelectParameters.Add("1", TypeCode.Int64, "3"); 

      gvxTaskList.DataSourceID = null; 
      gvxTaskList.DataSource = SqlDSOutstanding; 
      gvxTaskList.DataBind(); 
      upnlTaskList.Update(); 

      DispatchTabs.ActiveTabIndex = DispatchTabs.ActiveTabIndex + 1; 

     } 
     catch (Exception ex) 
     { 

     } 
    } 

不知道爲什麼它不工作,但我想有人在那裏知道如何做到這一點。感謝幫助!

這裏是客戶端顯示標籤容器是在更新面板內。

 <asp:UpdatePanel ID="upnlDispatch" UpdateMode="Conditional" runat="server"> 
     <Triggers></Triggers> 
     <ContentTemplate> 
      <ajaxToolkit:TabContainer ID="DispatchTabs" runat="server" Height="100%" Width="100%" CssClass="Tab" ActiveTabIndex="0"> 
       <ajaxToolkit:TabPanel ID="tabDashboard" runat="server" HeaderText="Dashboard" Width="100%" Height="100%"> 
        <HeaderTemplate> 
         Dashboard 
        </HeaderTemplate> 
        <ContentTemplate> 
         <asp:UpdatePanel ID="upnlDashboard" UpdateMode="Conditional" runat="server"> 
          <ContentTemplate>     
+1

OnClientClick? http://www.w3schools.com/aspnet/prop_webcontrol_button_onclientclick.asp OnClick將在服務器上引發,但OnClientClick會將標籤彈出。 – Gobbledigook

+1

跳到我的第一件事是UpdateMode =「有條件的」,並且您沒有定義任何觸發器,更改爲UpdateMode =「始終」,甚至刪除該屬性,因爲始終是默認的 – AntLaC

+0

Gobble,這就是我需要的感謝!我不知道如何接受你的評論作爲答案,因爲你沒有答覆,而是你評論而不是回答。但如果你發表你的評論作爲答案,我會接受它。再次感謝你和螞蟻! –

回答

1

將選項卡容器放在更新面板中應該有所斬斷。此外,目前你的代碼有一個缺陷,你不想總是隻給ActiveIndex選項卡加1,因爲如果超出最後一個,你會得到一個超出範圍的異常。

if(DispatchTabs.ActiveTabIndex == DispatchTabs.Count() -1) 
{ 
    DispatchTabs.ActiveTabIndex = 0; 
} 
else 
{ 
    DispatchTabs.ActiveTabIndex = DispatchTabs.ActiveTabIndex + 1; 
} 
+0

我明白你對索引的意思了,謝謝你;但是,標籤容器已經在更新面板中。我將在原始文章中添加一段代碼。也許你可以看到我錯過的東西。 –

相關問題