使用Javascript或jQuery迭代Gridview以查找最大值

使用Javascript或jQuery迭代Gridview以查找最大值,javascript,asp.net-mvc,gridview,Javascript,Asp.net Mvc,Gridview,我有一个gridview,场景是:一旦有人删除了一行,它会检查not是否为最大值。如果是,则删除该行,否则弹出窗口 因此,基本上,一旦有人单击delete,它就会获得该行的NOtif_recip_Id,并在Gridview中迭代,查看与该NOtif_recip_Id相对应的任何行的NOtif_recip_SEQ_NBR是否更大 问题在客户端是否可能?我用服务器端实现了这一点,但我认为当所有数据都在客户端本身时,这不是一个好方法 请帮忙。我用Javascript尝试了多种方法,但都没有用 <

我有一个gridview,场景是:一旦有人删除了一行,它会检查not是否为最大值。如果是,则删除该行,否则弹出窗口

因此,基本上,一旦有人单击delete,它就会获得该行的NOtif_recip_Id,并在Gridview中迭代,查看与该NOtif_recip_Id相对应的任何行的NOtif_recip_SEQ_NBR是否更大

问题在客户端是否可能?我用服务器端实现了这一点,但我认为当所有数据都在客户端本身时,这不是一个好方法

请帮忙。我用Javascript尝试了多种方法,但都没有用

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<script type="text/javascript">

    function check(var a ,var b) 
    {

        var grid = document.getElementById("GridView1");
        var cellPivot;
        debugger;
        if (grid.rows.length > 0) {
            for (i = 1; i < grid.rows.length-1; i++)
            {

//here I want code to iterate and compare value.Is it possible?
            alert("You must select an answer for all columns if Pivot is yes")
            }

    }

</script>
</head>

<body>
    <form id="form1" runat="server">
    <div>
     <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true" />
<table>

<tr>
<td>
  <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
                     <ContentTemplate>
                     <asp:Label ID="Label13" runat="server" Text="Notif_Recip Data" BackColor="Azure"></asp:Label>
<asp:GridView ID="GridView1" runat="server"  DataKeyNames="NOTIF_RECIP_GUID" emptydatatext="There are no data records to display."
AutoGenerateColumns = "false" Font-Names = "Arial"
Font-Size = "11pt" AlternatingRowStyle-BackColor="Beige"
HeaderStyle-BackColor = "AppWorkspace" 
PageSize = "10"  >
<Columns>

<asp:TemplateField ItemStyle-Width = "30px"  HeaderText = "NOTIF_RECIP_ID">
    <ItemTemplate>
        <asp:Label ID="lblNOTIF_RECIP_ID" runat="server"
        Text='<%# Eval("NOTIF_RECIP_ID")%>'></asp:Label>
    </ItemTemplate>
     <EditItemTemplate>
        <asp:TextBox ID="txtNOTIF_RECIP_ID" runat="server"
            Text='<%# Eval("NOTIF_RECIP_ID")%>'></asp:TextBox>
             <asp:RequiredFieldValidator ID="v1txtNOTIF_RECIP_ID" runat="server" ControlToValidate="txtNOTIF_RECIP_ID" Text="?" ForeColor="Red"  />
    </EditItemTemplate> 

</asp:TemplateField>
<asp:TemplateField ItemStyle-Width = "100px"  HeaderText = "NOTIF_RECIP_SEQ_NBR">
    <ItemTemplate>


        <asp:Label ID="lblNOTIF_RECIP_SEQ_NBR" runat="server" 
                Text='<%# Eval("NOTIF_RECIP_SEQ_NBR")%>'></asp:Label>
    </ItemTemplate>

</asp:TemplateField>

<asp:TemplateField>
    <ItemTemplate>


    <asp:LinkButton ID="lnkRemove" runat="server"
            CommandArgument = '<%# Eval("NOTIF_RECIP_GUID")%>'
         OnClientClick = "ValidateGrid"
       Text = "Delete" OnClick = <%# "javascript:check('" + Eval("NOTIF_RECIP_SEQ_NBR")" + "Eval("NOTIF_RECIP_ID") + "')" %> ></asp:LinkButton>

    </ItemTemplate>


</asp:TemplateField>
<asp:CommandField  ShowEditButton="True" />
</Columns>
 <HeaderStyle Font-Bold="True" />

<AlternatingRowStyle BackColor="#C2D69B"  />
</asp:GridView>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID = "GridView1" />
</Triggers>
</asp:UpdatePanel>
</td>
</tr>

</table>
</div>
</form>
</body>
</html>

功能检查(变量a、变量b)
{
var grid=document.getElementById(“GridView1”);
var-cellPivot;
调试器;
如果(grid.rows.length>0){
对于(i=1;i
我发现解决方案非常适合需要的人

<script type = "text/javascript">
        function GetSelectedRow(lnk) {
        debugger;
          var table, tbody, i, rowLen, row, j, colLen, cell;

            var result = confirm('Do you want to delete this value ?');
            if (result) {

                var x = document.getElementById('Label100');


                table = document.getElementById("GridView1");
                tbody = table.tBodies[0];

                var bool = true;
                var row = lnk.parentNode.parentNode;
                var rowIndex = row.rowIndex - 1;

                var RecipID = row.cells[0].innerText;
                var Sqqno = parseInt(row.cells[1].innerText);

                for (i = 1, rowLen = tbody.rows.length; i < rowLen; i++) {
                    row = tbody.rows[i];

                    var newrecipId = row.cells[0].innerText;
                    if (newrecipId == RecipID) {
                        cell = row.cells[1];

                        var newseq = parseInt(row.cells[1].innerText);
                        if (Sqqno < newseq) {
                            // debugger;
                            bool = false;
                            x = document.getElementById('Label100');
                            x.innerHTML = "ERROR-Delete RecipId with max Seqnumber";
                            x.style.display = "block";

                            return bool;
                            break;
                        }

                    }
                    else {
                        bool = true;
                    }

                }

                return bool;
            }
            else {
                return false;
            }

        }
    </script>

函数GetSelectedRow(lnk){
调试器;
var表,tbody,i,rowLen,row,j,colLen,cell;
var result=confirm('是否要删除此值?');
如果(结果){
var x=document.getElementById('Label100');
table=document.getElementById(“GridView1”);
tbody=表.tBodies[0];
var bool=真;
var row=lnk.parentNode.parentNode;
var rowIndex=row.rowIndex-1;
var RecipID=行。单元格[0]。innerText;
var Sqqno=parseInt(row.cells[1].innerText);
对于(i=1,rowLen=tbody.rows.length;i