用js遍历gridview的textbox

用js遍历gridview的textbox 并验证行值是否大于某个值 并批量保存数据

aspx 页面 首先绑定单位名称和编号,其他的用模板加textbox给textbox付属性值
<asp:GridView ID="GridView1" runat="server" onrowcreated="GridView1_RowCreated2" onrowdatabound="GridView1_RowDataBound"   
           >
                <Columns>
              <asp:TemplateField HeaderText="序号">
                        <ItemTemplate>
                        <%# (this.AspNetPager1.CurrentPageIndex - 1) * this.AspNetPager1.PageSize + Container.DataItemIndex + 1%>
                        </ItemTemplate>
                        <ItemStyle Wrap="True" /> 
                        <HeaderStyle Wrap="False" />   
                    </asp:TemplateField>
                   <asp:BoundField HeaderText="部门ID"  DataField="GroupID" />
                      <asp:BoundField HeaderText="部门"   DataField="G_CName" />
                      <asp:TemplateField   HeaderText="工作效率">
                        <ItemTemplate>
                      
                            <asp:TextBox ID="gzxl_Input"  Text="0.0"  Width="40px"  CssClass="text_input" runat="server"
                                οnblur="setClf()"></asp:TextBox>
                        </ItemTemplate>
                        <ItemStyle Wrap="True" /> 
                        <HeaderStyle Wrap="False" />   
                    </asp:TemplateField>
                     <asp:TemplateField HeaderText="大局意识"  >
                        <ItemTemplate>
                      
                            <asp:TextBox ID="djys_Input"      Text="0.0"     Width="40px" 
                                CssClass="text_input" runat="server" 
                                οnblur="setClf()"></asp:TextBox>
                        </ItemTemplate>
                        <ItemStyle Wrap="True" /> 
                        <HeaderStyle Wrap="False" />   
                    </asp:TemplateField>
                        <asp:TemplateField HeaderText="任务完成" >
                        <ItemTemplate>
                      
                            <asp:TextBox ID="rwwc_Input"  Text="0.0"   Width="40px"  CssClass="text_input"
                                runat="server" AutoPostBack="True" ontextchanged="rwwc_Input_TextChanged"></asp:TextBox>
                        </ItemTemplate>
                        <ItemStyle Wrap="True" /> 
                        <HeaderStyle Wrap="False" />   
                    </asp:TemplateField>
                       <asp:TemplateField HeaderText="团结协作"   >
                        <ItemTemplate>
                      
                            <asp:TextBox ID="tj_Input"  Text="0.0"  Width="40px"  CssClass="text_input"
                                runat="server" οnblur="setClf()"></asp:TextBox>
                        </ItemTemplate>
                        <ItemStyle Wrap="True" /> 
                        <HeaderStyle Wrap="False" />   
                    </asp:TemplateField>
                  
                          <asp:TemplateField HeaderText="民主意识"   >
                        <ItemTemplate>
                      
                            <asp:TextBox ID="mzys_Input"  Text="0.0"  Width="40px"  CssClass="text_input"
                                runat="server" οnblur="setClf()"></asp:TextBox>
                        </ItemTemplate>
                        <ItemStyle Wrap="True" /> 
                        <HeaderStyle Wrap="False" />   
                    </asp:TemplateField>
                             <asp:TemplateField HeaderText="单位形象"  >
                        <ItemTemplate>
                      
                            <asp:TextBox ID="dwxx_Input"  Text="0.0" Width="40px"  CssClass="text_input"
                                runat="server" οnblur="setClf()" ></asp:TextBox>
                        </ItemTemplate>
                        <ItemStyle Wrap="True" /> 
                        <HeaderStyle Wrap="False" />   
                    </asp:TemplateField>
                                <asp:TemplateField  HeaderText="管理绩效"   >
                        <ItemTemplate>
                      
                            <asp:TextBox ID="gljx_Input"  Text="0.0"  Width="40px"  CssClass="text_input"
                                runat="server" οnblur="setClf()"></asp:TextBox>
                        </ItemTemplate>
                        <ItemStyle Wrap="True" /> 
                        <HeaderStyle Wrap="False" />   
                    </asp:TemplateField>
                                    <asp:TemplateField  HeaderText="廉洁从业"   >
                        <ItemTemplate>
                      
                            <asp:TextBox ID="ljcy_Input"  Text="0.0"   Width="40px"   CssClass="text_input"
                                runat="server" οnblur="setClf()"></asp:TextBox>
                        </ItemTemplate>
                        <ItemStyle Wrap="True" /> 
                        <HeaderStyle Wrap="False" />   
                    </asp:TemplateField>
                  
                  
                </Columns>
            </asp:GridView>

效果图如下

js代码 写在最下面

 function setClf()
      {
            var table=document.getElementById("ctl00_PageBody_GridView1");
            var tr=table.getElementsByTagName("tr");
         
            var pattem=/^\d+(\.\d+)?$/;
            for( i=1;i <tr.length;i++)
            {
                var sum1;
                var a2,a3,a4,a5,a6,a7,a8,a9;
                if(pattem.test(tr[i].getElementsByTagName("td")[2].getElementsByTagName("input")[0].value))
                    a2=parseFloat( tr[i].getElementsByTagName("td")[2].getElementsByTagName("input")[0].value );
                else
                    a2=0;
                if(pattem.test(tr[i].getElementsByTagName("td")[3].getElementsByTagName("input")[0].value))
                    a3=parseFloat( tr[i].getElementsByTagName("td")[3].getElementsByTagName("input")[0].value );
                else
                    a3=0;
                if(pattem.test(tr[i].getElementsByTagName("td")[4].getElementsByTagName("input")[0].value))
                    a4=parseFloat( tr[i].getElementsByTagName("td")[4].getElementsByTagName("input")[0].value );
                else
                    a4=0;
                if(pattem.test(tr[i].getElementsByTagName("td")[5].getElementsByTagName("input")[0].value))
                    a5=parseFloat( tr[i].getElementsByTagName("td")[5].getElementsByTagName("input")[0].value );
                else
                    a5=0;
                if(pattem.test(tr[i].getElementsByTagName("td")[6].getElementsByTagName("input")[0].value))
                    a6=parseFloat( tr[i].getElementsByTagName("td")[6].getElementsByTagName("input")[0].value );
                else
                    a6=0;   
                if(pattem.test(tr[i].getElementsByTagName("td")[7].getElementsByTagName("input")[0].value))
                  a7=parseFloat( tr[i].getElementsByTagName("td")[7].getElementsByTagName("input")[0].value );
                else
                   a7=0; 
                  
                if(pattem.test(tr[i].getElementsByTagName("td")[7].getElementsByTagName("input")[0].value))
                  a8=parseFloat( tr[i].getElementsByTagName("td")[7].getElementsByTagName("input")[0].value );
                else
                   a8=0; 
                  
                if(pattem.test(tr[i].getElementsByTagName("td")[7].getElementsByTagName("input")[0].value))
                  a9=parseFloat( tr[i].getElementsByTagName("td")[7].getElementsByTagName("input")[0].value );
                else
                   a9=0;   
            
             
               var sum1= a2+a3+a4+a5+a6+a7+a8+a9
                if(sum1>1)
                {
                  alert("请检查输入数据有误!总和不能大于1" ) 
                }
                else
                {
                   sum2=1-sum1 ;
                  tr[i].getElementsByTagName("td")[2].getElementsByTagName("input") [0].title="该单位已经评价"+sum1+"分,还可以评价"+sum2+"分";
                  tr[i].getElementsByTagName("td")[3].getElementsByTagName("input") [0].title="该单位已经评价"+sum1+"分,还可以评价"+sum2+"分";
                  tr[i].getElementsByTagName("td")[4].getElementsByTagName("input") [0].title="该单位已经评价"+sum1+"分,还可以评价"+sum2+"分";
                  tr[i].getElementsByTagName("td")[5].getElementsByTagName("input") [0].title="该单位已经评价"+sum1+"分,还可以评价"+sum2+"分";
                  tr[i].getElementsByTagName("td")[6].getElementsByTagName("input") [0].title="该单位已经评价"+sum1+"分,还可以评价"+sum2+"分";
                  tr[i].getElementsByTagName("td")[7].getElementsByTagName("input") [0].title="该单位已经评价"+sum1+"分,还可以评价"+sum2+"分";
                  tr[i].getElementsByTagName("td")[8].getElementsByTagName("input") [0].title="该单位已经评价"+sum1+"分,还可以评价"+sum2+"分";
                  tr[i].getElementsByTagName("td")[9].getElementsByTagName("input") [0].title="该单位已经评价"+sum1+"分,还可以评价"+sum2+"分";
                }
            }

提交数据页面 遍历gridview

    foreach (GridViewRow row in GridView1.Rows)
                //for (int i = 0; i < GridView1.Rows.Count; i++)
                {
                sys_T_Leader_EvaluateEntity ut = new sys_T_Leader_EvaluateEntity();
                ut.DataTable_Action_ = DataTable_Action.Insert;
                int GroupID_Value =Convert.ToInt32(row.Cells[1].Text.ToString());
                int tjYear_Value = (int)Common.sink(tjYear_Input.UniqueID, MethodType.Post, 10, 0, DataType.Int); 
                int tjr_Value = UserData.GetUserDate.UserID;
           
                double gzxl = (double)Common.sink(((TextBox)row.FindControl("gzxl_Input")).UniqueID, MethodType.Post, 53, 0, DataType.Double);
                Common.sinkCompare("工作效率", ((TextBox)row.FindControl("gzxl_Input")).Text, MethodType.Post, 1, 0, DataType.Double);

                double djys = (double)Common.sink(((TextBox)row.FindControl("djys_Input")).UniqueID, MethodType.Post, 53, 0, DataType.Double);
                Common.sinkCompare("大局意识", ((TextBox)row.FindControl("djys_Input")).Text, MethodType.Post, 1, 0, DataType.Double);

                double rwwc = (double)Common.sink(((TextBox)row.FindControl("rwwc_Input")).UniqueID, MethodType.Post, 53, 0, DataType.Double);
                Common.sinkCompare("任务完成", ((TextBox)row.FindControl("rwwc_Input")).Text, MethodType.Post, 1, 0, DataType.Double);

                double tj = (double)Common.sink(((TextBox)row.FindControl("tj_Input")).UniqueID, MethodType.Post, 53, 0, DataType.Double);
                Common.sinkCompare("团结协作", ((TextBox)row.FindControl("tj_Input")).Text, MethodType.Post, 1, 0, DataType.Double);

                double mzys = (double)Common.sink(((TextBox)row.FindControl("mzys_Input")).UniqueID, MethodType.Post, 53, 0, DataType.Double);
                Common.sinkCompare("民主意识", ((TextBox)row.FindControl("mzys_Input")).Text, MethodType.Post, 1, 0, DataType.Double);

                double dwxx = (double)Common.sink(((TextBox)row.FindControl("dwxx_Input")).UniqueID, MethodType.Post, 53, 0, DataType.Double);
                Common.sinkCompare("单位形象", ((TextBox)row.FindControl("dwxx_Input")).Text, MethodType.Post, 1, 0, DataType.Double);

                double gljx = (double)Common.sink(((TextBox)row.FindControl("gljx_Input")).UniqueID, MethodType.Post, 53, 0, DataType.Double);
                Common.sinkCompare("管理绩效", ((TextBox)row.FindControl("gljx_Input")).Text, MethodType.Post, 1, 0, DataType.Double);

                double ljcy = (double)Common.sink(((TextBox)row.FindControl("ljcy_Input")).UniqueID, MethodType.Post, 53, 0, DataType.Double);
                Common.sinkCompare("廉洁从业", ((TextBox)row.FindControl("ljcy_Input")).Text, MethodType.Post, 1, 0, DataType.Double);

                ut.GroupID = GroupID_Value;
                ut.tjYear = tjYear_Value;
                ut.niandu = niandu_Input.SelectedItem.Text;
                ut.gzxl = gzxl;
                ut.djys = djys;
                ut.rwwc = rwwc;
                ut.tj = tj;
                ut.mzys = mzys;
                ut.dwxx = dwxx;
                ut.gljx = gljx;
                ut.ljcy = ljcy;
                ut.tjr = tjr_Value; 
                BusinessFacadeModel.sys_T_Leader_EvaluateInsertUpdateDelete(ut);
               }

在使用DevExpress控件的Gridview进行数据添加时,可以按照以下步骤进行操作: 1. 首先,需要确保已经连接到数据库,并创建好与Gridview所对应的数据表。 2. 接下来,需要使用GridView的DataRows属性来遍历所有行。可以使用循环来逐行遍历,然后获取每行的数据。 3. 对于每一行数据,需要创建一个与数据表对应的Insert SQL命令,将数据插入到数据库。 4. 在循环,逐行执行Insert SQL命令,将数据插入到数据库。 下面是一个简单的示例代码,用于说明如何使用DevExpress的Gridview将行数据添加到数据库: using DevExpress.XtraGrid.Views.Grid; using System.Data.SqlClient; private void AddRowsToDatabase() { // 连接到数据库 string connectionString = "YourConnectionString"; SqlConnection connection = new SqlConnection(connectionString); connection.Open(); // 获取GridView的DataRows属性 GridView gridView = gridView1; // 这里假设Gridview的名称为gridView1 for (int i = 0; i < gridView.DataRowCount; i++) { // 获取每一行的数据 object[] rowValues = ((DataRowView)gridView.GetRow(i)).Row.ItemArray; // 创建Insert SQL命令 SqlCommand command = new SqlCommand("INSERT INTO TableName (Column1, Column2, Column3) VALUES (@Value1, @Value2, @Value3)", connection); command.Parameters.AddWithValue("@Value1", rowValues[0]); command.Parameters.AddWithValue("@Value2", rowValues[1]); command.Parameters.AddWithValue("@Value3", rowValues[2]); // 执行Insert SQL命令 command.ExecuteNonQuery(); } // 关闭数据库连接 connection.Close(); } 请注意,以上代码仅为示例,需要根据实际情况进行调整。确保连接字符串正确,以及数据表的列名和参数名称等都正确对应。 希望以上回答能够帮助到您,如有更多疑问,请随时追问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值