Bootstrap

怎么给HyperLinkColumn的DataNavigateUrlField指定多个字段?

怎么给HyperLinkColumn的DataNavigateUrlField指定多个字段?

楼主tanrui(Tanruy) 2004-08-15 10:43:52 在 .NET技术 / ASP.NET 提问

我想让HyperLinkColumn的url参数有两个字段:  
  somepage.aspx?id=1&name=terry  
  在数据源中的字段是ID和Name,  
  那应该怎么写DataNavigateUrlField? 问题点数:20、回复次数:5Top

1 楼saucer(思归)回复于 2004-08-15 10:57:02 得分 20

HyperLinkColumn   doesn't   support   multiple   parameters,   use   TemplateColumn   instead  
   
  <asp:TemplateColumn   HeaderText="View   Details">    
  <ItemTemplate>    
  <asp:Hyperlink   runat="server"   Text='View   Details'                                                                                  
  NavigateUrl='<   %#   "page.aspx?ViewID="   &   Server.UrlEncode(Container.DataItem("ListingNo"))  
  "&Param2="&Server.UrlEncode(DropDown1.SelectedItem.Value)%>   '  
   
              ID="Hyperlink1"   NAME="Hyperlink1"   />    
  </ItemTemplate>    
  </asp:TemplateColumn>    
   
   
   
  see  
  http://www.dotnetspider.com/Technology/KBPages/585.aspx  
  Top

2 楼webdiyer(陕北吴旗娃)回复于 2004-08-15 10:57:29 得分 0

用模板列,或者在DAtaGrid的ItemDataBound事件处理程序中先用FindControl方法找到对应列的HyperLink,然后通过绑定的数据指定它的NavigateUrl属性。Top

3 楼tongtianming(菜鸟也有梦想)回复于 2004-08-15 11:01:32 得分 0

<asp:HyperLinkColumn   DataNavigateUrlField="Num"   DataNavigateUrlFormatString="Response.Redirect('../YL/YL.htm?id={0}')"   DataTextField="Link"   HeaderText="链接"></asp:HyperLinkColumn>  
  <asp:HyperLinkColumn   DataNavigateUrlField="id"   DataNavigateUrlFormatString="javascript:window.showModalDialog('ViewDetail.aspx?id={0}');"   DataTextField="id"   HeaderText="ID"></asp:HyperLinkColumn>  
  *************datagride列传递多个数据*********  
   
  <asp:TemplateColumn   HeaderText="备注">  
  <ItemTemplate>  
  <asp:HyperLink   id="HyperLink1"   runat="server"   NavigateUrl="Editfittings.aspx?str1=<%#   DataBinder.Eval(Container.DataItem,   'ID')%>&str2=<%#   DataBinder.Eval(Container.DataItem,   'CarType')%>"     text='<%#   DataBinder.Eval(Container.DataItem,"备注")%>'>  
  </asp:HyperLink>  
  </ItemTemplate>  
  </asp:TemplateColumn>  
  当年我写的,有2种方法能选择Top

4 楼tnt8csdn2000(琥珀雨田)回复于 2004-08-15 11:41:45 得分 0

既然用模板列了,就用linkbutton,在后台想怎么写就怎么写。Top

5 楼46539492(男儿当自强(http://blog.csdn.net/46539492/))回复于 2004-08-15 11:45:46 得分 0

就用模板列。  
  <asp:TemplateColumn   HeaderText="备注">  
  <ItemTemplate>  
  <asp:HyperLink   id="HyperLink1"   runat="server"   NavigateUrl="Editfittings.aspx?str1=<%#   DataBinder.Eval(Container.DataItem,   'ID')%>&str2=<%#   DataBinder.Eval(Container.DataItem,   'CarType')%>"     text='<%#   DataBinder.Eval(Container.DataItem,"备注")%>'>  
  </asp:HyperLink>  
  </ItemTemplate>  
  </asp:TemplateColumn>  
  或者  
  <a   href=“list.aspx?id='<%#databinder.eval(container.dataitem,"id")'&child='<%#databinder.eval(container.dataitem,"child")'”>连接</a>   
 

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;