我正在使用RadTabStrip,RadTab,RadMultiPage和RadPageView Telerik对象的网页。
有四个标签。前三个选项卡包含各种RadText,RadDropDownList和RadListBox对象,供用户输入信息。在第一页上,当用户输入ID号时,服务器调用将当前存档的该号码的信息填充到各种控件中。这没有任何问题。
我的问题是当选择第三个选项卡时,我需要调用一个服务器例程,该例程将使用从前两个选项卡输入的信息来填充该页面上的RadDropDownList和RadListBox对象。我正在编写的代码正在执行,但是当它返回时,未选择第三个选项卡,并且不显示该选项卡的页面视图。相反,您仍然会看到最后一个活动的标签。此外,如果最后一个选项卡是选项卡1,则单击选项卡2会导致显示选项卡2,并且选项卡1的内容将显示在其下。
我从RadTabStrip的OnTabClick事件调用我的例程:
<telerik:RadTabStrip RenderMode="Lightweight" runat="server" ID="RadTabStrip1" MultiPageID="RadMultiPage1" SelectedIndex="0" Skin="Silk" AutoPostBack="true" OnTabClick="tabViewChanged" >
我的代码末尾是否需要执行某些操作才能显示页面视图?我试过这个:
RadTab tab1 = RadTabStrip1.Tabs.FindTabByText("Benefits");
tab1.Selected = true;
tab1.PageView.Selected = true;
但似乎没有任何效果。
我希望我只缺少某种类型的渲染调用。
我确实在控件中引用了RadTabStrip1以在Ajax设置中进行更新。
修剪HTML
<telerik:RadTabStrip RenderMode="Lightweight" runat="server" ID="RadTabStrip1" MultiPageID="RadMultiPage1" SelectedIndex="0" Skin="Silk" AutoPostBack="true" OnTabClick="loadBenefits" >
<Tabs>
<telerik:RadTab Text="Tab1" Width="200px" PostBack="false"></telerik:RadTab>
<telerik:RadTab Text="Tab2" Width="200px" PostBack="false"></telerik:RadTab>
<telerik:RadTab Text="Benefits" Width="200px" PostBack="true" ></telerik:RadTab>
<telerik:RadTab Text="Confirmation" Width="200px" PostBack="false"></telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
<telerik:RadMultiPage runat="server" ID="RadMultiPage1" SelectedIndex="0" CssClass="outerMultiPage">
<telerik:RadPageView runat="server" ID="RadPageView1">
<telerik:RadTextBox ID="payroll_id" MaxLength="9" OnTextChanged="COBRAQE_NewPayrollID" runat="server" AutoPostBack="true"></telerik:RadTextBox>
<telerik:RadDateInput ID="event_date" runat="server" />
</telerik:RadPageView>
<telerik:RadPageView runat="server" ID="RadPageView2">
<telerik:RadTextBox ID="Dependent1Name" MaxLength="35" runat="server"></telerik:RadTextBox>
<telerik:RadDatePicker ID="Dependent1BirthDate" Height="25px" DatePopupButton-Width="25px" RenderMode="Lightweight" runat="server"></telerik:RadDatePicker>
<telerik:RadDropDownList ID="Dependent1Relation" runat="server">
<Items>
<telerik:DropDownListItem Value="" Text="" />
<telerik:DropDownListItem Text="Spouse" Value="S" />
<telerik:DropDownListItem Text="Child" Value="C" />
<telerik:DropDownListItem Text="Other" Value="O" />
</Items>
</telerik:RadDropDownList>
<telerik:RadDropDownList ID="Dependent1Gender" runat="server">
<Items>
<telerik:DropDownListItem Value="" Text="" />
<telerik:DropDownListItem Value="M" Text="Male" />
<telerik:DropDownListItem Value="F" Text="Female" />
</Items>
</telerik:RadDropDownList>
</telerik:RadPageView>
<telerik:RadPageView runat="server" ID="RadPageView3">
<telerik:RadLabel runat="server" ID="lblHealthOption" AssociatedControlID="lbHealthOption" Text="Health Benefit" />
<telerik:RadLabel runat="server" ID="lblHealthCost" AssociatedControlID="ddHealthOptionCost" Text="Cost" />
<telerik:RadLabel runat="server" ID="lblHealthDeps" AssociatedControlID="ddHealthOptionDependents" Text="Covered" />
<telerik:RadDropDownList runat="server" ID="ddHealthOption">
<Items>
<telerik:DropDownListItem Text="None Selected" Value="0" />
</Items>
</telerik:RadDropDownList>
<telerik:RadTextBox runat="server" ID="txtHealthCost" Text="default" />
<telerik:RadListBox runat="server" ID="lbHealthDeps">
<Items>
<telerik:RadListBoxItem Text="None" Value="" />
</Items>
</telerik:RadListBox>
</telerik:RadPageView>
<telerik:RadPageView runat="server" ID="RadPageView4">
<div>This tab is currently empty</div>
</telerik:RadPageView>
</telerik:RadMultiPage>