GridView1 选中行或所有行的 JS数据验证

 //是否选择记录
        function CheckSel() {
            var selectCount = 0;
            var companyID = "";
            var inputs = document.getElementById("<%=GridView1.ClientID%>").getElementsByTagName("input");
            for (i = 1; i < GridView1.rows.length; i++) {
                var ddl = GridView1.rows[i].cells[1].getElementsByTagName("SELECT")[0];
                if ("undefined" != typeof (ddl)) {
                    var chk = GridView1.rows[i].cells[0].getElementsByTagName("INPUT")[0];
                    if ("undefined" != typeof (chk) && chk.checked) {
                        selectCount++;
                    }
                }
            }
            if (selectCount < 1) {
                alert("提示:请选择要导入新添加的申请记录!");
                return false;
            }            
            return true;
        }
  //GridView1所有行数据验证
        function CheckAllData() {            
            if (!CheckSel()) {
                return false;
            }            
            var GridView1 = document.getElementById("<%=GridView1.ClientID%>");
            var cellNum = 1;
            for (i = 1; i < GridView1.rows.length; i++) {
                var chk = GridView1.rows[i].cells[0].getElementsByTagName("INPUT")[0];
                if ("undefined" != typeof (chk) && chk.checked) {
                    var ddl = GridView1.rows[i].cells[1].getElementsByTagName("SELECT")[0];
                    if ("undefined" != typeof (ddl)) {
                        if (ddl.options[ddl.selectedIndex].value == "sel") {
                            ddl.focus();
                            alert("提示:请选择目标网站!");
                            return false;
                        }
                    }
                    var txtCompanyName = GridView1.rows[i].cells[2].getElementsByTagName("INPUT")[0];
                    if ("undefined" != typeof (txtCompanyName)) {
                        if (txtCompanyName.value.trim() == "") {
                            txtCompanyName.focus();
                            alert("提示:目标公司名不能为空!");
                            return false;
                        }
                    }
                }
            }
            return true;
        }
        //GridView1选中行数据验证
        function CheckSelData(button) {
            var ddl = button.parentElement.parentNode.childNodes[1].getElementsByTagName("SELECT")[0];
            if ("undefined" != typeof (ddl)) {
                if (ddl.options[ddl.selectedIndex].value == "sel") {
                    ddl.focus();
                    alert("提示:请选择目标网站!");
                    return false;
                }
            }
            var txtCompanyName = button.parentElement.parentNode.childNodes[2].getElementsByTagName("INPUT")[0];
            if ("undefined" != typeof (txtCompanyName)) {
                if (txtCompanyName.value.trim() == "") {
                    txtCompanyName.focus();
                    alert("提示:目标公司名不能为空!");
                    return false;
                }
            }            
            return true;
        }

......
<cc2:MyButton ID="btnApply" runat="server" CssClass="buttonblue" Visible="false"
            Text="申请" OnClientClick="return CheckAllData();" onclick="btnApply_Click"></cc2:MyButton>
                </td>
......
<asp:GridView ID="GridView1" runat="server" AllowPagerable="False"
            AllowChangeCellWidth="True"   AutoGenerateColumns="False" AllowPaging="False"
        CellPadding="0" DataKeyNames="ImportJobID" GridLines="None"  onrowdatabound="GridView1_RowDataBound"
        CssClass="gridviewStyle" JumpButtonHeight="25px" JumpButtonWidth="25px" >            
              <Columns>
                    <asp:TemplateField HeaderText="选择">
                        <ItemStyle CssClass="gridview_itemStyle" Width="40px" />
                        <HeaderStyle CssClass="gridview_headerStyle"/>
                        <ItemTemplate>
                            <asp:CheckBox ID="GridViewID" runat="server"/>
                        </ItemTemplate>
                    </asp:TemplateField>
                <asp:TemplateField HeaderText="选择目标网站">
                    <ItemStyle CssClass="gridview_itemStyle" Width="100px" />
                    <HeaderStyle CssClass="gridview_headerStyle"  Width="100px"/>
                    <ItemTemplate>
                        <asp:Label ID="lblTargetWebSite" runat="server" Text=""  Visible="false"/>
                        <asp:DropDownList ID="gvddlddlTargetWebSite" runat="server" Visible="false">
                            <asp:ListItem Text="请选择" Value="sel"></asp:ListItem>
            <asp:ListItem Text="51Job" Value="51Job"></asp:ListItem>
            <asp:ListItem Text="ChinaHR" Value="ChinaHR"></asp:ListItem>
            <asp:ListItem Text="CJOL" Value="CJOL"></asp:ListItem>
            <asp:ListItem Text="JobCN" Value="JobCN"></asp:ListItem>
            <asp:ListItem Text="ZhaoPin" Value="ZhaoPin"></asp:ListItem>
                        </asp:DropDownList>                        
                    </ItemTemplate>
                </asp:TemplateField>
                 <asp:TemplateField HeaderText="目标公司名">
                    <ItemStyle CssClass="gridview_itemStyle" />
                    <HeaderStyle CssClass="gridview_headerStyle" />
                    <ItemTemplate>
                        <asp:Label ID="lblTargetCompanyName" runat="server" Text=""  Visible="false"/>
                        <cc1:Job88TextBox ID="txtTargetCompanyName" MaxLength="200" Width="95%" runat="server" Visible="false"></cc1:Job88TextBox>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="操作" Visible="false">
                    <ItemStyle CssClass="gridview_itemStyle" Width="60px" />
                    <HeaderStyle CssClass="gridview_headerStyle" Width="60px" />
                    <ItemTemplate>
                        <asp:Button ID="gvbtnApply" runat="server" OnClick="gvbtnApply_Click" CssClass="buttonblue" OnClientClick="return CheckSelData(this);"  Text="申请" Enabled="false"/>
                    </ItemTemplate>
                </asp:TemplateField>
......
原文地址:https://www.cnblogs.com/ylemzhang/p/1582345.html