【问题标题】:how to get textbox value in gridview using javascript如何使用javascript在gridview中获取文本框值
【发布时间】:2014-12-06 11:27:13
【问题描述】:

我想使用 javascript 在 gridview 中获取文本框值。但我找不到价值。这是我的 Asp.net 页面。如何从更新按钮 onclientclick 中获取“txtGridName”值?

此处为 Asp.net 代码:

     <Columns>

     <asp:TemplateField HeaderText="S.No">
    <ItemTemplate>                                                                            <%#Container.DataItemIndex+1 %>
    </ItemTemplate>

    </asp:TemplateField>
    <asp:TemplateField HeaderText="Unit Std">

    <EditItemTemplate>
    <%--<asp:TextBox ID="txtLocEditName" Width="100%" runat="server" Text='<%#(Eval("loc_name").ToString()) %>' />--%>

    <asp:DropDownList ID="drpGridUnitStd" runat="server" Text='<%#(Eval("uom_standard").ToString()) %>'>
    <asp:ListItem Text="A" Value="A"></asp:ListItem>
    <asp:ListItem Text="I" Value="I"></asp:ListItem>
                                                                                </asp:DropDownList>
    </EditItemTemplate>
    <ItemTemplate>
    <asp:Label ID="lblLocation" runat="server" Text='<%#(Eval("uom_standard").ToString())%>' />
    </ItemTemplate>
    </asp:TemplateField>

    <asp:TemplateField HeaderText="Unit Name">

    <EditItemTemplate>
    <asp:TextBox ID="txtGridName" Width="100%" runat="server" Text='<%#(Eval("uom_ts_unit").ToString()) %>' />
    </EditItemTemplate>
    <ItemTemplate>
    <asp:Label ID="lblGridName" runat="server" Text='<%#(Eval("uom_ts_unit").ToString()) %>' />
    </ItemTemplate>
    </asp:TemplateField>


    <asp:TemplateField HeaderText="Dimension-1">
    <EditItemTemplate>
    <asp:TextBox ID="txtGridDim1" Width="100%" runat="server" Text='<%#(Eval("uom_dimension_1").ToString()) %>' />
    </EditItemTemplate>
    <ItemTemplate>
    <asp:Label ID="lblGridDim1" runat="server" Text='<%#(Eval("uom_dimension_1").ToString())%>' />
    </ItemTemplate>
    </asp:TemplateField>

    <asp:TemplateField HeaderText="Dimension-2">
    <EditItemTemplate>
    <asp:TextBox ID="txtGridDim2" Width="100%" runat="server" Text='<%#(Eval("uom_dimension_2").ToString()) %>' />
    </EditItemTemplate>
    <ItemTemplate>
     <asp:Label ID="lblGridDim2" runat="server" Text='<%#(Eval("uom_dimension_2").ToString())%>' />
    </ItemTemplate>
    </asp:TemplateField>

      <asp:TemplateField HeaderText="Dimension-3">
    <EditItemTemplate>
       <asp:TextBox ID="txtGridDim3" Width="100%" runat="server" Text='<%#(Eval("uom_dimension_3").ToString()) %>' />
    </EditItemTemplate>
    <ItemTemplate>
    <asp:Label ID="lblGridDim3" runat="server" Text='<%#(Eval("uom_dimension_3").ToString())%>' />
    </ItemTemplate>
    </asp:TemplateField>

    <asp:TemplateField HeaderText="Dimension-4">
    <EditItemTemplate>
    <asp:TextBox ID="txtGridDim4" Width="100%" runat="server" Text='<%#(Eval("uom_dimension_4").ToString()) %>' />
    </EditItemTemplate>
    <ItemTemplate>
    <asp:Label ID="lblGridDim4" runat="server" Text='<%#(Eval("uom_dimension_4").ToString())%>' />
    </ItemTemplate>
    </asp:TemplateField>

     <asp:TemplateField HeaderStyle-CssClass="hideGridColumn" ItemStyle-CssClass="hideGridColumn">
    <ItemTemplate>
    <asp:HiddenField ID="hdnUnit_Id" Value='<%#(Eval("unit_id").ToString())%>' runat="server" />
</ItemTemplate>
</asp:TemplateField>

<asp:TemplateField HeaderText="Options">
<EditItemTemplate>
                                                                                <asp:ImageButton ID="imgbtnUpdate" CommandName="Update" runat="server" ImageUrl="~/common/icons/Save-icon.png" ToolTip="Update" Height="15px" Width="15px" OnClientClick="return update();"/>
                                                                                <asp:ImageButton ID="imgbtnCancel" runat="server" CommandName="Cancel" ImageUrl="~/common/icons/Delete-icon.png" ToolTip="Cancel" Height="15px" Width="15px" />
                                                                            </EditItemTemplate>
                                                                            <ItemTemplate>
                                                                                <asp:ImageButton ID="imgbtnEdit" CommandName="Edit" runat="server" ImageUrl="~/common/icons/edit.png" ToolTip="Edit" Height="15px" Width="15px" />
                                                                                <asp:ImageButton ID="imgbtnDelete" CommandName="Delete" runat="server" ImageUrl="~/common/icons/delete.png" ToolTip="Delete" Height="15px" Width="15px" OnClientClick="return del();" />
                                                                            </ItemTemplate>

</asp:TemplateField>



</Columns>





</asp:GridView>

Javascript代码如下:

    function update() 
  {
        var grid1 = document.getElementById("<%= gvUnit.ClientID %>");
        for (i = 1; i < grid1.rows.length ; i++) 
        {
            var cellValue = grid1.rows[i].cells[1].value;
            alert(cellValue);
        }

    }

【问题讨论】:

    标签: javascript c# asp.net gridview


    【解决方案1】:

    问题是客户端 ID 类似于以下内容:

    ct100_Contentplaceholder_GridID_RowID_ROWINDEX_TextboxID
    

    类似的东西。并且无法唯一识别。由于网格仅适用于一次编辑,因此您会发现它更容易。由于您没有使用 JQuery,所以它有点复杂。也许如果您将CssClass="GridTextBox" 添加到您的文本框控件,然后使用getElementsByClassName

    var tb = document.getElementsByClassName('GridTextBox');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-09
      • 1970-01-01
      • 2014-11-09
      相关资源
      最近更新 更多