簡體   English   中英

從 GridView 中的 INPUT 獲取值

[英]Get value from INPUT inside GridView

我有一個帶有非 ASP 對象的 GridView(用於建議的輸入類型),我想從這些表單中獲取值到后面的代碼,我該怎么做?

<ItemTemplate>
    <tr style="background-color: #E0FFFF; color: #333333;">
        <td style="text-align: left;padding-left:10px">
            <asp:Label ID="DESLabel" runat="server" Text='<%# Eval("DES") %>' />
        </td>
        <td style="text-align: left">
            <input id ="PROD" style="width:100%;Height:25px" />
        </td>
        <td>
            <asp:Label ID="PRODQUANTLabel" runat="server" Text='<%# Eval("PRODQUANT") %>' />
        </td>
        <td>
            <asp:TextBox ID="AVQUANTLabel" runat="server" Height="25px" Width="65px" Text='<%# Eval("AVQUANT") %>' />
        </td>
    </tr>
</ItemTemplate>

您可以使用 findcontrol 方法

在 for 循環中或在 RowUpdating 事件中

1.循環中的第一種方式,2 RowUpdating 方法

 foreach (GridDataItem item in RadGrid1.Items)
    {
        string id = item["ID"].Text;
        string firstName = (item["TempColumn1"].FindControl("PRODQUANTLabel") as Lable).Text;
    }

protected void GridView1_RowUpdating(object sender,idViewUpdateEventArgs e)
  {
              GridView gv = (GridView)sender;
              GridViewRow gvRow = gv.Rows[e.RowIndex];
              Lable tb = (Lable) gridview1.FindControl("PRODQUANTLabel");
              if (tb == null)
                 throw new ApplicationException("Could not find Lable");

              string strValue= tb.Text;

   }

您可以像任何簡單的表單帖子一樣獲取代碼背后的價值。 為此,您首先要確保輸入控件上有一個name字段。

<input id ="PROD" name="prod" style="width:100%;Height:25px" />

然后在回發時,您可以使用Request.Form獲取值

var value = Request.Form["prod"]

我最終使用了另一種使用 asp texboxes 的方法。 還在努力中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM