比如有A,B两个页面,点击A <a href='B.aspx?shopemail=<%#DataBinder.Eval(Container.DataItem,"shopemail")%>'>跳到B页面,B页面用Request.Params["shopemail"]接收,
B页面使用DataList绑定数据的,当我点击“来一份”的时候(放入购物车)    <a href='B.aspx?id=<%#DataBinder.Eval(Container.DataItem,"Goods_ID")%>'title="来一份">[来一份]</a>,传递一个值到后台,但是之前从A页面传递过来的Request.Params"shopemail"]的值就被B页面的id给覆盖了
怎么样才能保留Request.Params["shopemail"],或者有没有其他的解决方案?

解决方案 »

  1.   

    把之前传过来的Request.Params["shopemail"]保留在B页面后台中
    public string str = "";//全局变量
    B页面加载时给str赋值str = Request.Params["shopemail"];
    在页面绑定:<a href='B.aspx?id=<%#DataBinder.Eval(Container.DataItem,"Goods_ID")%>&shopemail=<%=str%>'title="来一份">[来一份]</a>
    OK否?
      

  2.   

    Refer this:
    http://www.cnblogs.com/insus/p/3161960.html
      

  3.   

    你的问题是id传参后还想有shopemail吧,问题应该是如何临时保存数据
    第一次进页面 session["shopemail"] = Request.Params["shopemail"];保存数据有多种session只是举个例子
      

  4.   

    修改B页面传值到后台的方式
    不需要href 方式,页面都被刷新了,A页面穿过来的值怎么可能还在
      

  5.   

    随便声明一个Label控件,Visible设为false,Page_Load{ if(!isPostBack){} }的时候赋值不就行了,Label控件的EnableViewState必须为true