我有一个带有GridView的ASP.Net页面。在其中一个GridView单元格中,有一个HyperLink控件,其NavigateURL属性设置如下:
NavigateUrl='<%# "~/telecom/SmartPhoneInventory.aspx?IMEI=" + Eval("IMEI") %>'
此页面上有一个RadioButtonList(rblDeviceType)(不在GridView中),有四个值。我想在HyperLink的NavigateURL中添加另一个查询字符串,以便:
NavigateUrl='<%# "~/telecom/SmartPhoneInventory.aspx?IMEI=" + Eval("IMEI") + "&devicetype=" + rblDeviceType.SelectedValue %>'
这当然不是正确的语法。有没有办法做到这一点?
答案 0 :(得分:1)
试试这个:
在html
<a href='<%= string.Format("~/telecom/SmartPhoneInventory.aspx?IMEI={0}&devicetype=", this.someValue, rblDeviceType.SelectedValue) %>'>
Hello World
</a>
或在html
:
<asp:HyperLink runat="server" NavigateUrl='' ID="demoLink"> Hello World </asp:HyperLink>
然后在codebehind
:
demoLink.NavigateUrl= string.Format("~/telecom/SmartPhoneInventory.aspx?IMEI={0}&devicetype=",this.someValue,rblDeviceType.SelectedValue)
关于
'someValue'
您在示例代码中显示为Eval("IMEI")
,因为您的代码不是网格的一部分,您需要从控件直接,会话,视图状态或服务器端变量获取此代码。您的代码示例不允许我了解此值的原始来源。
在您的代码中尝试此操作:
public partial class _Default : Page
{
public string someValue = "Hello World";
使用string.Format
和<%=
代替<%#