在超链接字段 href 中设置下拉列表值
Set dropdownlist value in hyperlinkfield href
我正在使用 asp.net 网络表单并有以下问题。
我有一个 aspx 页面有 asp:DropDownList 和 Gridview 每列有 asp:HyperLinkField。
因此,我想将所选 DropDownList 的值动态地设置为 hyperLinkField 标记,代码位于以下代码的后面或内部。
<asp:HyperLinkField Text="Merge" DataNavigateUrlFields="MemberId" Target="_blank" DataNavigateUrlFormatString='/MergeMember.aspx?memberid={0}&clubid={1}" />
如您所见,我已经在 {0} 中绑定了名为 MemberId 的字段,现在我想在 {1} 中设置下拉列表的选定值。设置 {1} 只是一个演示,用于显示我真正想在哪里设置所选下拉列表的值我还没有实现。
如果可以请指导如何?
如果不可能,请指导我如何使用不同的方法实现这一目标?
提前致谢。
.aspx 页面
<asp:DropDownList ID="ddlTest" runat="server">
</asp:DropDownList>
<asp:GridView ID="grdTesting" runat="server" AutoGenerateColumns="false" Width="98%">
<Columns>
<asp:TemplateField HeaderText="Job Number">
<ItemTemplate>
<asp:LinkButton ID="lnkTest" runat="server" Text='<% # Bind("Test") %>' ToolTip='<%# Bind("Test") %>'
OnClick="lnkTest_Click"></asp:LinkButton>
<asp:HiddenField ID="hdnId" runat="server" Value='<% # Bind("Id") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
.aspx.cs
protected void lnkTest_Click(object sender, EventArgs e)
{
GridViewRow gvr = (GridViewRow)((Control)sender).Parent.Parent;
HiddenField hdnId = (HiddenField)gvr.FindControl("hdnId");
Response.Redirect("frmTest.aspx?Id=" + Convert.ToString(hdnId.Value) + "&DropDownId=" + ddlTest.SelectedValue, false);
}
注:-
我认为你必须改变你的逻辑......
在上面的示例中...我将 Gridview 与 Linkbutton 和 Id 绑定
单击 link 按钮,您可以重定向到其他页面(根据您的逻辑..)
发送查询字符串值(Id 和 Dropdownlist 值)
我正在使用 asp.net 和 c# 4.5
获取外部下拉列表值here
我正在使用 asp.net 网络表单并有以下问题。
我有一个 aspx 页面有 asp:DropDownList 和 Gridview 每列有 asp:HyperLinkField。 因此,我想将所选 DropDownList 的值动态地设置为 hyperLinkField 标记,代码位于以下代码的后面或内部。
<asp:HyperLinkField Text="Merge" DataNavigateUrlFields="MemberId" Target="_blank" DataNavigateUrlFormatString='/MergeMember.aspx?memberid={0}&clubid={1}" />
如您所见,我已经在 {0} 中绑定了名为 MemberId 的字段,现在我想在 {1} 中设置下拉列表的选定值。设置 {1} 只是一个演示,用于显示我真正想在哪里设置所选下拉列表的值我还没有实现。
如果可以请指导如何?
如果不可能,请指导我如何使用不同的方法实现这一目标? 提前致谢。
.aspx 页面
<asp:DropDownList ID="ddlTest" runat="server">
</asp:DropDownList>
<asp:GridView ID="grdTesting" runat="server" AutoGenerateColumns="false" Width="98%">
<Columns>
<asp:TemplateField HeaderText="Job Number">
<ItemTemplate>
<asp:LinkButton ID="lnkTest" runat="server" Text='<% # Bind("Test") %>' ToolTip='<%# Bind("Test") %>'
OnClick="lnkTest_Click"></asp:LinkButton>
<asp:HiddenField ID="hdnId" runat="server" Value='<% # Bind("Id") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
.aspx.cs
protected void lnkTest_Click(object sender, EventArgs e)
{
GridViewRow gvr = (GridViewRow)((Control)sender).Parent.Parent;
HiddenField hdnId = (HiddenField)gvr.FindControl("hdnId");
Response.Redirect("frmTest.aspx?Id=" + Convert.ToString(hdnId.Value) + "&DropDownId=" + ddlTest.SelectedValue, false);
}
注:-
我认为你必须改变你的逻辑......
在上面的示例中...我将 Gridview 与 Linkbutton 和 Id 绑定
单击 link 按钮,您可以重定向到其他页面(根据您的逻辑..) 发送查询字符串值(Id 和 Dropdownlist 值)
我正在使用 asp.net 和 c# 4.5
获取外部下拉列表值here