代码之家  ›  专栏  ›  技术社区  ›  Jambobond

JavaScript-ASP.net-在ASP面板上循环所有控件

  •  0
  • Jambobond  · 技术社区  · 16 年前

    是否有任何方法可以让我在asp.net面板上循环所有控件,并检查每个控件的类型,以确定它是否为asp类型TimeInput?

     'this is checking that something has been entered into at least one of the time input boxes
    Protected Sub valCusAllTextBox_ServerValidate(ByVal source As Object, ByVal args As System.Web.UI.WebControls.ServerValidateEventArgs) Handles valCusAllTextBox.ServerValidate
        'When the Save or Submit button is clicked the Page.IsValid() command causes the "valCusAllTextBox" custom validator control
        '(which was dragged on to the page) to call this event - where we do our customised error checking
        args.IsValid = False        'args.IsValid is a system function
        'check all controls within the Overtime Claim panel
        For Each ctrl As Control In pnlOvertimeClaim.Controls
            If TypeOf ctrl Is TimeInput Then
                If CType(ctrl, TimeInput).TimeInMinutes <> 0 Then
                    args.IsValid = True
                    Exit For
                End If
            End If
        Next
        If txtOnCallAllow.Text.Trim() <> "" Then
            args.IsValid = True
        End If
        If txtMealAllow.Text.Trim() <> "" Then
            args.IsValid = True
        End If
    End Sub
    
    1 回复  |  直到 16 年前
        1
  •  2
  •   Muhammad Akhtar    16 年前

    您可以使用此脚本从面板中查找特定控件, 将脚本放在页面末尾,

    <script type="text/javascript" language="javascript">
    var pnl = document.getElementById('pnl')
    var array = pnl.getElementsByTagName("a");
    for (var n = 0; n < array.length; ++n) {
        alert("anchor");
    }
    var array = pnl.getElementsByTagName("img");
    for (var n = 0; n < array.length; ++n) {
        alert("Image");
    }
    

    <asp:Panel runat="server" ID="pnl">
            <a id="sd" href=""></a>
            <img src="" />
            <a id="A1" href=""></a>
        </asp:Panel>