怎么把datagrid中传过去的参数UrlEncode

       这是工作中遇见的特殊情况, 希望对有这方面需求的朋友有帮助!
       一、
1 None.gif < asp:TemplateColumn HeaderText = " 浏览报表 " >
2 None.gif                                     < ItemStyle HorizontalAlign = " Center "  Width = " 80px " ></ ItemStyle >
3 None.gif                                     < ItemTemplate >
4 None.gif                                         < a  target = _blank href = ' <%# "detailspage.aspx?name="+Server.UrlEncode(DataBinder.Eval(Container,"DataItem.REPORTNAME").ToString())+ "&RQ=" + Server.UrlEncode(DataBinder.Eval(Container,"DataItem.RQ").ToString()) %> ' >
5 None.gif                                             < asp:Label runat = " server "  Text = ' 浏览 '  ID = " LL "   /></ a >
6 None.gif                                     </ ItemTemplate >
7 None.gif                                 </ asp:TemplateColumn >
    二、ItemDataBound
ContractedBlock.gif ExpandedBlockStart.gif
None.gifItemDataBound事件中   
None.gif  
if   (e.Item.ItemIndex   >=   0)   
ExpandedBlockStart.gifContractedBlock.gif  
dot.gif{   
InBlock.gif  HyperLink   link   
=   (HyperLink)e.Item.Cells[0].Controls[0];   
InBlock.gif  link.NavigateUrl
="df.aspx?str1="   +   link.Text   +   "&str2="   +   e.Item.Cells[3].text;   
ExpandedBlockEnd.gif  }
   
None.gif

    三、TemplateColumn
ContractedBlock.gif ExpandedBlockStart.gif
None.gif<asp:TemplateColumn   runat="server">其实更方便。下面是我的一段代码:   
None.gif  
<asp:DataGrid   id="MyDataGrid"   runat="server"     
None.gif  AllowPaging
="True"     
None.gif  PageSize
="12"     
None.gif  Width
="95%"     
None.gif  CellPadding
="3"     
None.gif  ItemStyle
-ForeColor="#000000"   
None.gif  AutoGenerateColumns
="false">   
None.gif      
<columns>   
None.gif          
<asp:TemplateColumn   runat="server">   
None.gif  
<itemtemplate>   
None.gif      
<a   href=''   onClick='return   f_open1("<%#DataBinder.Eval(Container.DataItem,"filename")%>")'><%#   DataBinder.Eval(Container.DataItem,"title")   %></a> </itemtemplate>   
None.gif          
</asp:TemplateColumn>   
None.gif      
</columns>   
None.gif  
</asp:DataGrid>

四、
ContractedBlock.gif ExpandedBlockStart.gif
None.gif在用HTTP方式提交的时候,最好是把要传输的变量用"Server.UrlEnCode"一下。   
None.gif    
None.gif  这样可以保证数据的完整性,我就出现过这样的问题,为了保险期间,还是用一下为妙。   
None.gif    
None.gif  例:   
None.gif    
None.gif  原题:   
None.gif    
None.gif  
<a   href='shows.aspx?id=<%#DataBinder.Eval(Container.DataItem,"ID")%>&BigClass=<%#DataBinder.Eval(Container.DataItem,"大类别")%>'>链接字段</a>   
None.gif    
None.gif  把里面的“DataBinder.Eval(Container.DataItem,
"filename")”用Server.UrlEnCode()编码器包起来,传到另一个页面时再用Server.UrlDeCode进行解码后,再传到另外的变量。   
None.gif    
None.gif  改过后:   
None.gif    
None.gif  
<a   href="shows.aspx?id=<%#Server.UrlEnCode(DataBind.Eval(Container.DataItem,"ID"))#>&BigClass=<%#Server.UrlEnCode(DataBind.Eval(Container.DataItem,"大类别")%>">链接字段</a>   
None.gif    
None.gif  在其接收页面里可以这么写:   
None.gif    
None.gif  Dim   ID   As   Integer   
None.gif  ID
=Server.UrlDeCode(Request.Querystring("ID"))   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值