Asp.net Item模板空值传入变量
Asp.net Item template null vaue pass in variable
我正在使用 ASP.NET 网格视图我的代码是:
<asp:TemplateField HeaderText="Id" >
<ItemTemplate>
<a target='_blank' href='Details.aspx?uniId=<%#Eval("uniId")%>&uni_name='<%#Eval("uni_name") %>''><%#Eval("uniId")%></a>
</ItemTemplate>
</asp:TemplateField>
服务器端代码是:
UniID = Convert.ToInt32(Request.QueryString["uniId"].ToString());
UniName = Request.QueryString["uni_name"].ToString();
问题是 UniID
变量正在工作,但 UniName
正在传递 null
值。
去掉第二次调用 Eval
周围的单引号。
<asp:TemplateField HeaderText="Id" >
<ItemTemplate>
<a target='_blank' href='Details.aspx?uniId=<%# Eval("uniId") %>&uni_name=<%# Eval("uni_name") %>'><%#Eval("uniId")%></a>
</ItemTemplate>
</asp:TemplateField>
考虑一下您的代码将呈现的 HTML,无论 uni_name
是什么,超链接的目标仅包含 Details.aspx?uniId=someId&uni_name=
因为您要封装的是单引号uni_name
的值最终关闭 href.
的值
我正在使用 ASP.NET 网格视图我的代码是:
<asp:TemplateField HeaderText="Id" >
<ItemTemplate>
<a target='_blank' href='Details.aspx?uniId=<%#Eval("uniId")%>&uni_name='<%#Eval("uni_name") %>''><%#Eval("uniId")%></a>
</ItemTemplate>
</asp:TemplateField>
服务器端代码是:
UniID = Convert.ToInt32(Request.QueryString["uniId"].ToString());
UniName = Request.QueryString["uni_name"].ToString();
问题是 UniID
变量正在工作,但 UniName
正在传递 null
值。
去掉第二次调用 Eval
周围的单引号。
<asp:TemplateField HeaderText="Id" >
<ItemTemplate>
<a target='_blank' href='Details.aspx?uniId=<%# Eval("uniId") %>&uni_name=<%# Eval("uni_name") %>'><%#Eval("uniId")%></a>
</ItemTemplate>
</asp:TemplateField>
考虑一下您的代码将呈现的 HTML,无论 uni_name
是什么,超链接的目标仅包含 Details.aspx?uniId=someId&uni_name=
因为您要封装的是单引号uni_name
的值最终关闭 href.