如何在dropdownlist onchange事件中访问隐藏字段值

时间:2014-07-10 17:50:43

标签: c# javascript jquery asp.net .net

如何从dropdownlist onchange事件中访问gridview itemtemplate hiddenfield值?基本上,如果您在下面看到我在下拉列表值更改时调用ConfirmStatus,我需要将hiddenfield值传递给该方法。

<asp:TemplateField Visible="true" HeaderText="Status" >
  <ItemTemplate>

   <asp:DropDownList ID="ddlTransactionList"  Visible = "False" AutoPostBack="True"  OnSelectedIndexChanged="ddlTransactionList_SelectedIndexChanged" 
       onchange=" if(ConfirmStatus(this)!=1){ return false;}"
                              runat="server"/>
   <asp:Label runat="server" ID="lblStatus"  Visible="True" Text='<%# ShowStatus( Container.DataItem ) %>' />
   <input id="hiddenOriginalStatus" type="hidden" runat="server" />
</ItemTemplate>
</asp:TemplateField>

1 个答案:

答案 0 :(得分:0)

我宁愿从后面的代码中触发onchange,因为这是你分配的地方并拥有所有价值。

 protected void gridview1_DataBound(object sender, GridViewRowEventArgs e)
 {
      if (e.Row.RowType == DataControlRowType.DataRow)
      {
          HiddenField hiddenOriginalStatus = (HiddenField)e.Row.FindControl("hiddenOriginalStatus");
          (e.Row.FindControl("ddlTransactionList") as DropDownList).Attributes.Add("onchange", "ConfirmStatus('" + hiddenOriginalStatus.Value + "');");
      }
 }