C# 将值绑定到hiddenfield
需要将JobApplyUID绑定到cs页面中的hiddenfield。。。请帮助我…您需要将C# 将值绑定到hiddenfield,c#,asp.net,C#,Asp.net,需要将JobApplyUID绑定到cs页面中的hiddenfield。。。请帮助我…您需要将隐藏字段放在模板字段中,否则它将不会被数据绑定,因为网格视图,详细视图等无法访问它 从此改变 <asp:HiddenField ID="hidapplyuid" runat="server" EnableViewState="true" /> <asp:TemplateField Visible="false">
隐藏字段
放在模板字段
中,否则它将不会被数据绑定,因为网格视图
,详细视图
等无法访问它
从此改变
<asp:HiddenField ID="hidapplyuid" runat="server" EnableViewState="true" />
<asp:TemplateField Visible="false">
<ItemTemplate>
<asp:Label ID="UID" CssClass="" runat="server" Text='<%#Eval("candUID")%>'></asp:Label>
<asp:Label ID="JobApplyUID" CssClass="" runat ="server" Text='<%#Eval("jobApplyUID")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
从gridview评估控件非常简单,请尝试以下演示。在项目中添加新的测试页。让我们拥有如下所示的ASPX页面
<asp:TemplateField>
<ItemTemplate>
<%-- Move hidden variable inside of the template, else it cannot be databound --%>
<asp:HiddenField ID="hidapplyuid" runat="server" Value='<%#Eval("jobApplyUID")%>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<ItemTemplate>
<asp:Label ID="UID" CssClass="" runat="server" Text='<%#Eval("candUID")%>'></asp:Label>
<asp:Label ID="JobApplyUID" CssClass="" runat ="server" Text='<%#Eval("jobApplyUID")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
如果您尝试此操作,您可以从gridview中的任何控件获取值。错误先生,是什么?
值=''
?无错误,label id获取值,hiddenfield需要获取该值先生,如果我将其移动到网格,我可以访问网格以外的值。。。我需要将该值用于其他目的…@kirk如何通过JavaScript获取隐藏字段的值?您可以利用ClientID
或使用clientMode
,查看
<asp:TemplateField>
<ItemTemplate>
<%-- Move hidden variable inside of the template, else it cannot be databound --%>
<asp:HiddenField ID="hidapplyuid" runat="server" Value='<%#Eval("jobApplyUID")%>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<ItemTemplate>
<asp:Label ID="UID" CssClass="" runat="server" Text='<%#Eval("candUID")%>'></asp:Label>
<asp:Label ID="JobApplyUID" CssClass="" runat ="server" Text='<%#Eval("jobApplyUID")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<div>
Job Apply GUID : <asp:Label runat="server" ID="uxJobApplyUID"></asp:Label>
<asp:GridView ID="uxGrid" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField HeaderText="JobApply UID">
<ItemTemplate>
<asp:HiddenField ID="uxHiddenJobApplyUID" runat="server" Value='<%#Eval("jobApplyUID") %>' />
<asp:Button ID="uxShowDetails" runat="server" Text="Show Data" OnClick="uxShowDetails_Click" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.Add("jobApplyUID", typeof(string));
dt.Rows.Add(System.Guid.NewGuid().ToString());
dt.Rows.Add(System.Guid.NewGuid().ToString());
dt.Rows.Add(System.Guid.NewGuid().ToString());
dt.Rows.Add(System.Guid.NewGuid().ToString());
dt.Rows.Add(System.Guid.NewGuid().ToString());
uxGrid.DataSource = dt;
uxGrid.DataBind();
}
}
protected void uxShowDetails_Click(object sender, EventArgs e)
{
this.uxJobApplyUID.Text = (((sender as Button).NamingContainer as GridViewRow).FindControl("uxHiddenJobApplyUID") as HiddenField).Value;
}