利用DataGrid跨页面传递多参数,已经利用了模板列,但是还是存在问题,希望大家帮忙解决,一下是我试过的两种格式:
(1) <asp:HyperLink ID= "HyperLink1 " runat= "server " Text= ' <%# DataBinder.Eval(Container.DataItem, "主教材 ") %> ' NavigateUrl= 'xbrdetail.aspx?xb= <%#(DataBinder.Eval(Container.DataItem, "xb ")%> &type= Server.UrlEncode(主教材) ' Target= "_blank "> </asp:HyperLink>
(2) <asp:HyperLink ID= "HyperLink4 " runat= "server " NavigateUrl= ' <%#String.Format( "xbrdetail.aspx?xb={0}&type={1} ",DataBinder.Eval(Container.DataItem, "xb "),1)%> '> 打开 </asp:HyperLink>
第一个输出结果为: <%
第二个输出结果为:管理?type=1 实际结果应该为管理系 type为下一个参数,此处我没有输出。
请各位帮忙看看问题出在那里,谢谢!
------解决方案--------------------------------------------------------
<asp:HyperLink ID= "HyperLink1 " runat= "server " Text= ' <%# DataBinder.Eval(Container.DataItem, "主教材 ") %> ' NavigateUrl= ' <%# "xbrdetail.aspx?xb= " + (DataBinder.Eval(Container.DataItem, "xb ") + "&type= " + Server.UrlEncode(主教材) %> ' Target= "_blank "> </asp:HyperLink>
<asp:HyperLink ID= "HyperLink4 " runat= "server " NavigateUrl= ' <%#String.Format( "xbrdetail.aspx?xb={0}&type={1} ", DataBinder.Eval(Container.DataItem, "xb "), "type对应参数只 ")%> '> 打开 </asp:HyperLink>