最近项目里用到了很多超链接来传参数,且不说这样做的安全性能和效率怎样,我反正用的乐此不疲。

    先说<a>标签,我需要在A页面中单击它,然后跳转到B页面以显示我要查询的信息,B页面接收传来的参数,再进行数据处理显示我要看到的信息。在<a>标签里,我要传递三个参数:strUrl,strCode,strId

    方法如下,用 & 连接各个参数:

1 <a href="B页面.aspx?strUrl=<%#Eval("phdPhotoURL") %>&strCode=<%#Eval("phdPhotoID") %>&strId=<%# Eval("phdCheckResultID") %>" target="_blank">查看照片</a>

  B页面的接收方式为:

1         string strUrl = Request.QueryString["strUrl"];
2 
3         string strCode = Request.QueryString["strCode"];

 


     

    然后就是LinkButton控件了,它通过CommandArgument来传递参数,网友们大部分都是通过把n个参数作为一个字符串来传递,然后再在接收端分割。

    比如我们需要传递三个参数到后台:

1  <asp:LinkButton ID="lbtnUpload" runat="server" CommandArgument='<%#Eval("pcrID")+","+Eval("phdPhotoID")+","+Eval("phdPhotoURL")+","+Eval("phdisupload") %>' onclick="lbtnUpload_Click">重新上传</asp:LinkButton>

   后台的接收端要用一个数组来接收分割而成的参数值。

   

1              //接收传过来的参数
2             LinkButton lb = (LinkButton)sender;
3             //将获取到的字符串用“,”分割,存在一个数组里,分别读取数组元素
4             string[] strParam = lb.CommandArgument.ToString().Split(',');
5             string strId = strParam[0];
6             string strPhotoId = strParam[1];
7             string strUrl = strParam[2];
8             string strIsUpload = strParam[3];

    就这样,页面之间和页面与后台之间传递多个参数就轻松完成了。当然还有其他方法传参,后期会慢慢总结并应用,敬请期待。

 

 

 

 

    

 

posted on 2013-01-30 21:26  贞心真义  阅读(1662)  评论(1编辑  收藏  举报