簡體   English   中英

如何強制填寫radtabstrip的前2個標簽?

[英]How to make first 2 tabs of radtabstrip mandatory to be filled out?

我有一個嵌入了telerik的ASP.NET項目。 我擁有的telerik控件是RadTabStrip。 當前的任務是:客戶希望先填寫前兩個選項卡“雇員”和“常規信息”,然后才能填寫其他選項卡。

不確定如何實施。 這是一個樣本

<telerik:RadTabStrip ID="RadTabStrip1" runat="server" SelectedIndex="0" MultiPageID="RadMultiPage1"
            Skin="Telerik" CausesValidation="false">
            <Tabs>
                <telerik:RadTab runat="server" Selected="True">
                    <TabTemplate>
                        <asp:Label ID="Label29" runat="server" Text="<%$ Resources:strings, sample_generalinformation %>" />
                        <img id="generalInfoErrorIndicator" src="../Images/alert-small.gif" alt="" style="display: none;" />
                    </TabTemplate>
                </telerik:RadTab>
                <telerik:RadTab runat="server">

這是標簽代碼。

<!-- EMPLOYEE INFORMATION -->
            <telerik:RadPageView ID="pvEmployeeInformation" runat="server">
                <div id="employeeInfoDiv" runat="server">
                    <table border="0" cellpadding="3" cellspacing="2">
                        <tr>
                            <td colspan="2">
                                <h1>
                                    <asp:Label ID="Label34" runat="server" Text="<%$ Resources:strings, observed_employee_information %>" /></h1>
                            </td>
                        </tr>
                        <tr>
                            <td style="text-align: right;">
                                <asp:Label ID="Label12" runat="server" Text="<%$ Resources:strings, employee_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:EmployeeSearch ID="employeeSearch" runat="server" OnClientEmployeeSelected="employeeSelected"
                                    ClientValidationFunction="validateEmployee" ValidationGroup="employeeInfo" />
                            </td>
                        </tr>
                        <tr>
                            <td colspan="2" align="center">
                                <table border="0" cellpadding="3" cellspacing="2">
                                    <tr>
                                        <td>
                                            <asp:CheckBox ID="areaSampleCheckBox" runat="server" Text="<%$ Resources:strings, labels_areasample %>"
                                                ValidationGroup="employeeInfo" />
                                        </td>
                                        <td>
                                            <asp:CheckBox ID="unknownEmployeeCheckBox" runat="server" Text="<%$ Resources:strings, labels_unknownemployee %>"
                                                ValidationGroup="employeeInfo" />
                                        </td>
                                    </tr>
                                </table>
                            </td>
                        </tr>
                        <tr>
                            <td style="text-align: right;">
                                <asp:Label ID="Label13" runat="server" Text="<%$ Resources:strings, job_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:JobSearch ID="jobSearch" runat="server" ValidationGroup="employeeInfo" ClientValidationFunction="validateJob"
                                    OnClientJobSelected="jobSelected" />
                            </td>
                        </tr>
                        <tr>
                            <td colspan="2" align="center">
                                <asp:CheckBox ID="unknownJobCheckBox" runat="server" Text="<%$ Resources:strings, labels_unknownjob %>" />
                            </td>
                        </tr>
                        <tr>
                            <td style="text-align: right;">
                                <asp:Label ID="Label14" runat="server" Text="<%$ Resources:strings, shift_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:NewShiftDropDown ID="shiftDropDown" runat="server" ValidationGroup="employeeInfo" />
                            </td>
                        </tr>
                        <tr>
                            <td style="text-align: right;">
                                <asp:Label ID="Label15" runat="server" Text="<%$ Resources:strings, shiftlength_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:NewShiftLengthDropDown ID="shiftLengthDropDown" runat="server" ValidationGroup="employeeInfo" />
                            </td>
                        </tr>
                        <tr>
                            <td colspan="2">
                                <asp:ValidationSummary ID="employeeInformationValidationSummary" runat="server" Font-Bold="True"
                                    ForeColor="Red" HeaderText="<%$ Resources:strings, validationsummary_nextwizard_msg %>"
                                    ValidationGroup="employeeInfo" />
                            </td>
                        </tr>
                    </table>
                </div>
            </telerik:RadPageView>

還有一個

<!-- GENERAL INFORMATION -->
            <telerik:RadPageView ID="pvGeneralInformation" runat="server">
                <div id="generalInfoDiv" runat="server">
                    <table border="0" cellpadding="3" cellspacing="2">
                        <tr>
                            <td colspan="4">
                                <h1>
                                    <asp:Label ID="Label16" runat="server" Text="<%$ Resources:strings, general_information %>" /></h1>
                            </td>
                        </tr>
                        <tr valign="top">
                            <td style="text-align: right;">
                                <asp:Label ID="Label1" runat="server" Text="<%$ Resources:strings, facility_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:FacilitySearch ID="facilitySearch" runat="server" ValidationGroup="generalInfo"
                                    OnClientFacilitySelected="facilitySelected" OnClientFacilityCleared="facilityCleared"
                                    AutoPostBack="true" />
                            </td>
                            <td style="text-align: right; padding-left: 10px;" valign="top">
                                <asp:Label ID="Label7" runat="server" Text="<%$ Resources:strings, samplelength_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:NewSampleLengthDropDown ID="sampleLengthDropDown" runat="server" ValidationGroup="generalInfo" />
                            </td>
                        </tr>
                        <tr valign="top">
                            <td style="text-align: right; padding-left: 10px;">
                                <asp:Label ID="Label2" runat="server" Text="<%$ Resources:strings, sampledate_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:NewDateEntry ID="sampleDate" runat="server" ValidationGroup="generalInfo"
                                    ValidateDateNotInFuture="true" />
                            </td>
                            <td style="text-align: right; padding-left: 10px;" valign="top">
                                <asp:Label ID="Label8" runat="server" Text="<%$ Resources:strings, samplemethod_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:SampleMethodSearch ID="sampleMethodSearch" runat="server" ValidationGroup="generalInfo"
                                    OnClientSampleMethodSelected="sampleMethodSelected" />
                            </td>
                        </tr>
                        <tr valign="top">
                            <td style="text-align: right;">
                                <asp:Label ID="Label3" runat="server" Text="<%$ Resources:strings, sampletype_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:NewSampleTypeDropDown ID="sampleTypeDropDown" runat="server" ValidationGroup="generalInfo"
                                    FormDesignator="PassiveBadge" />
                            </td>
                            <td style="text-align: right; padding-left: 10px;" valign="top">
                                <asp:Label ID="Label69" runat="server" Text="<%$ Resources:strings, samplenumber_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <telerik:RadTextBox ID="sampleNumberTextBox" runat="server" Skin="Telerik" Width="200px" />&nbsp;<asp:Image
                                    ID="sampleNumberInfoImage" runat="server" ImageUrl="~/Images/info.png" ToolTip="<%$ Resources:strings, samplenumber_info %>" />
                                <asp:RegularExpressionValidator ID="RegularExpressionValidator19" runat="server"
                                    ControlToValidate="sampleNumberTextBox" ErrorMessage="<%$ Resources:strings, validations_fieldlength_16 %>"
                                    ToolTip="<%$ Resources:strings, validations_fieldlength_16 %>" ValidationExpression="<%$ AppSettings:Length16ValidationExpression %>"
                                    ValidationGroup="generalInfo" />
                            </td>
                        </tr>
                        <tr valign="top">
                            <td style="text-align: right; padding-left: 10px;" valign="top">
                                <asp:Label ID="Label4" runat="server" Text="<%$ Resources:strings, occupationalhealthlimit_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:OelSearch ID="oelSearch" runat="server" ValidationGroup="generalInfo" OnClientOelSelected="oelSelected" />
                            </td>
                            <td style="text-align: right; padding-left: 10px;" valign="top">
                                <asp:Label ID="Label10" runat="server" Text="<%$ Resources:strings, labsamplenumber_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <telerik:RadTextBox ID="labSampleNumberTextBox" runat="server" Skin="Telerik" Width="175px" />
                                <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="labSampleNumberTextBox"
                                    ErrorMessage="<%$ Resources:strings, labsamplenumber_length %>" ToolTip="<%$ Resources:strings, labsamplenumber_length %>"
                                    ValidationExpression="<%$ AppSettings:Length64ValidationExpression %>" ValidationGroup="generalInfo" />
                            </td>
                        </tr>
                        <tr valign="top">
                            <td style="text-align: right; padding-left: 10px;" valign="top">
                                <asp:Label ID="Label67" runat="server" Text="<%$ Resources:strings, exposuregroup_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:ExposureGroupSearch ID="exposureGroupSearch" runat="server" ValidationGroup="generalInfo" />
                            </td>
                            <td colspan="2" align="center">
                                <table border="0" cellpadding="3" cellspacing="2">
                                    <tr>
                                        <td style="text-align: right; padding-left: 10px;" valign="top">
                                            <asp:Label ID="Label11" runat="server" Text="<%$ Resources:strings, stelsample_label %>"
                                                Font-Bold="True" ForeColor="Navy" />
                                        </td>
                                        <td style="text-align: left;">
                                            <asp:CheckBox ID="stelSampleCheckBox" runat="server" />
                                        </td>
                                        <td style="text-align: right; padding-left: 10px;" valign="top">
                                            <asp:Label ID="Label68" runat="server" Text="<%$ Resources:strings, labels_ceiling %>"
                                                Font-Bold="True" ForeColor="Navy" />
                                        </td>
                                        <td style="text-align: left;">
                                            <asp:CheckBox ID="ceilingSampleCheckBox" runat="server" />
                                        </td>
                                    </tr>
                                </table>
                            </td>
                        </tr>
                        <tr valign="top">
                            <td style="text-align: right; padding-left: 10px;" valign="top">
                                <asp:Label ID="Label5" runat="server" Text="<%$ Resources:strings, collectinguser_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:AdminUserSearch ID="adminUserSearch" runat="server" ValidationGroup="generalInfo" />
                            </td>
                            <td style="text-align: right;">
                                <asp:Label ID="Label18" runat="server" Text="<%$ Resources:strings, samplingdevice_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:NewSamplingDeviceDropDown ID="samplingDeviceDropDown" runat="server" />
                            </td>
                        </tr>
                        <tr valign="top">
                            <td style="text-align: right; padding-left: 10px;" valign="top">
                                <asp:Label ID="Label6" runat="server" Text="<%$ Resources:strings, samplestrategy_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <ihamm:NewSampleStrategyDropDown ID="sampleStrategyDropDown" runat="server" ValidationGroup="generalInfo" />
                            </td>
                            <td style="text-align: right;">
                                <asp:Label ID="Label19" runat="server" Text="<%$ Resources:strings, blanknumber_label %>"
                                    Font-Bold="True" ForeColor="Navy" />
                            </td>
                            <td style="text-align: left;">
                                <telerik:RadTextBox ID="blankNumberTextBox" runat="server" Skin="Telerik" />
                                <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="blankNumberTextBox"
                                    ErrorMessage="<%$ Resources:strings, blanknumber_required %>" ToolTip="<%$ Resources:strings, blanknumber_required %>"
                                    ValidationGroup="generalInfo" />
                                <asp:RegularExpressionValidator ID="RegularExpressionValidator2" runat="server" ControlToValidate="blankNumberTextBox"
                                    ErrorMessage="<%$ Resources:strings, blanknumber_length %>" ToolTip="<%$ Resources:strings, blanknumber_length %>"
                                    ValidationExpression="<%$ AppSettings:Length64ValidationExpression %>" ValidationGroup="generalInfo" />
                            </td>
                        </tr>
                        <tr valign="top">
                            <td colspan="4">
                                <asp:ValidationSummary ID="generalInformationValidationSummary" runat="server" Font-Bold="True"
                                    ForeColor="Red" HeaderText="<%$ Resources:strings, validationsummary_nextwizard_msg %>"
                                    ValidationGroup="generalInfo" />
                            </td>
                        </tr>
                    </table>
                </div>
            </telerik:RadPageView>

由於所有自定義引用,很難為您提供基於自己的代碼的解決方案。 但是,可以從后面的代碼直接訪問各個選項卡中的控件。 我在啟用tab2的3個RadTabStrip選項卡上進行了測試。

UPDATE

前面的示例出了點問題。 我必須使用一些Javascript來解決客戶端的問題。 我測試了此代碼,它正在工作。 基本上,第一個選項卡上有兩個文本框,並且默認情況下禁用了一個按鈕。 僅當兩個文本框中均包含文本時,該按鈕才會啟用(我知道您在選項卡上有多個控件需要填寫,因此這是一個很好的示例)。 然后單擊按鈕啟用選項卡2。當第一個和第二個選項卡上的字段/控件滿足要求時,可以重寫javascript以直接啟用選項卡。

在PAGE_LOAD中設置不應顯示或啟用的標簽

protected void Page_Load(object sender, EventArgs e)
{

    //RadTabStrip1.Tabs[2].Visible = false;
    RadTabStrip1.Tabs[2].Enabled = false;
}


protected void Button1_Click(object sender, EventArgs e)
    {
        RadTabStrip1.Tabs[2].Enabled = true;
    }

這是腳本的其余代碼

<body>
<form id="form1" runat="server">

    <script language="javascript" type="text/javascript">
        //function to enable button if two textboxes contains text
        function SetButtonStatus(sender, target) {
            var first = document.getElementById('<%=TextBox1.ClientID %>');
            var second = document.getElementById('<%=TextBox2.ClientID %>');
            //Condition to check whether user enters text in two textboxes or not
            if ((sender.value.length >= 1 && first.value.length >= 1) && (sender.value.length >= 1 && second.value.length >= 1))
                document.getElementById(target).disabled = false;
            else
                document.getElementById(target).disabled = true;
        }
    </script>


    <telerik:RadScriptManager runat="server" ID="RadScriptManager1" />
    <div>
        <telerik:RadTabStrip RenderMode="Lightweight" runat="server" ID="RadTabStrip1" MultiPageID="RadMultiPage1" SelectedIndex="0" Skin="Silk">
            <Tabs>
                <telerik:RadTab Text="I am Tab 0" Width="200px"></telerik:RadTab>
                <telerik:RadTab Text="I am Tab 1" Width="200px"></telerik:RadTab>
                <telerik:RadTab Text="I am Tab 2" Width="200px"></telerik:RadTab>
            </Tabs>
        </telerik:RadTabStrip>
        <telerik:RadMultiPage runat="server" ID="RadMultiPage1" SelectedIndex="0" CssClass="outerMultiPage">
            <telerik:RadPageView runat="server" ID="RadPageView1">
                <telerik:RadTabStrip RenderMode="Lightweight" runat="server" ID="RadTabStrip2" MultiPageID="RadMultiPage2"
                    Orientation="VerticalLeft" Skin="Silk" Width="50px" Height="355px" SelectedIndex="0">
                </telerik:RadTabStrip>
                <telerik:RadMultiPage runat="server" ID="RadMultiPage2" SelectedIndex="0" CssClass="innerMultiPage">
                    <telerik:RadPageView runat="server" ID="PageView1">
                        <div>
                            <asp:TextBox ID="TextBox1" runat="server" onkeyup="SetButtonStatus(this,'btnButton')"></asp:TextBox>
                            <asp:TextBox ID="TextBox2" runat="server" onkeyup="SetButtonStatus(this,'btnButton')"></asp:TextBox>
                            <asp:Button ID="btnButton" runat="server" Text="Button" Enabled="false" OnClick="Button1_Click" />
                        </div>
                    </telerik:RadPageView>
                </telerik:RadMultiPage>
            </telerik:RadPageView>
            <telerik:RadPageView runat="server" ID="RadPageView2">
                <div></div>
                <div>
                    <p>Something</p>
                </div>
            </telerik:RadPageView>
            <telerik:RadPageView runat="server" ID="RadPageView3">
                <div>
                    <p>Again something</p>
                </div>
            </telerik:RadPageView>
        </telerik:RadMultiPage>
    </div>
  </form>
</body>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM