日期:2014-05-17  浏览次数:20452 次

页面传递值的问题
比如有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"],或者有没有其他的解决方案?

------解决方案--------------------
在B页面创建一个集合,把A页面传过来到值保存一下,购物车中读取的时候就根据集合的值来读取,删除的话也从集合中移除,应该可以吧,我也是新手啊,仅供参考
------解决方案--------------------
把之前传过来的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否?
------解决方案--------------------
Refer this:
http://www.cnblogs.com/insus/p/3161960.html
------解决方案--------------------
你的问题是id传参后还想有shopemail吧,问题应该是如何临时保存数据
第一次进页面 session["shopemail"] = Request.Params["shopemail"];

保存数据有多种session只是举个例子

------解决方案--------------------
修改B页面传值到后台的方式
不需要href 方式,页面都被刷新了,A页面穿过来的值怎么可能还在
------解决方案--------------------
随便声明一个Label控件,Visible设为false,Page_Load{ if(!isPostBack){} }的时候赋值不就行了,Label控件的EnableViewState必须为true
------解决方案--------------------
你是说要保存传过来的值吗。 定义个变量 保存吧
------解决方案--------------------
两个参数的名字设置成不一样的