高手帮忙

大眼睛 2012-07-28 11:26:44
我repeater里两个图片分别地址为:http://localhost:8012/ProductsInfo.aspx?id=7 和http://localhost:8012/ProductsInfo.aspx?id=5
但是点击完第一个id=7后再点击第二个id=5,虽然地址是id=5可是页面内容还是id=7的内容,这是怎么回事??求解!!
...全文
200 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
大眼睛 2012-07-30
  • 打赏
  • 举报
回复
每点击一次repeater就会跳转到productsINfo.aspx页面吧,但是我这个是只有第一次点击会跳转到productsInfo.aspx页面,第二次就没有断点过来,真是奇怪
大眼睛 2012-07-30
  • 打赏
  • 举报
回复
我重新创建了个页面,还是原来的代码,就好了~
不知道为什么
如果只是回忆 2012-07-28
  • 打赏
  • 举报
回复
你把第二個圖片的http://localhost:8012/ProductsInfo.aspx?id=5改成http://localhost:8012/ProductsInfo.aspx?logid=5


if(!IsPostBack)
{
string id = Request.QueryString["id"].ToString();
string logid = Request.QueryString["logid"].ToString();
然后选取该id的信息,然后绑定页面的控件。

}


大眼睛 2012-07-28
  • 打赏
  • 举报
回复
逻辑问题?
if(!IsPostBack)
{
string id = Request.QueryString["id"].ToString();
然后选取该id的信息,然后绑定页面的控件。

}
这个有问题么??
Im_Sorry 2012-07-28
  • 打赏
  • 举报
回复
逻辑判断问题!!!!!
大眼睛 2012-07-28
  • 打赏
  • 举报
回复
是缓存么?
cm_boy 2012-07-28
  • 打赏
  • 举报
回复
ProductsInfo.aspx 页面,直接request.queryString["id"]
cm_boy 2012-07-28
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 的回复:]

<ItemTemplate>
<li>
<a href='ProductsInfo.aspx?id=<%#Eval("id") %>' target="_blank" >

<img alt="<%#Eval("nam……
[/Quote]我都不知道,这样的绑定,还要后台获取数据做什么?
大眼睛 2012-07-28
  • 打赏
  • 举报
回复
你这没错,我也按着这个写的,实在检查不出来~
您有空给我看看么?939007107
如果只是回忆 2012-07-28
  • 打赏
  • 举报
回复
我剛才測試了一下

顯示的頁面 Default.aspx
前臺
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<li>
<a href='ProductsInfo.aspx?Id=<%#Eval("Id") %>'>
<img alt='<%#Eval("title") %>' src='UserFile/123/<%# Eval("filename1") %>' width="113px" height="147px">
<%#Eval("title") %>
</a>
</li>
</ItemTemplate>
</asp:Repeater>

後臺
private ActivityManager am = new ActivityManager();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Repeater1.DataSource = am.SelectAllActivity();
Repeater1.DataBind();
}
}



要跳轉的頁面 ProductsInfo.aspx
前臺
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<img src='UserFile/123/<%# Eval("filename1") %>' width="113px" height="147px" />
</ItemTemplate>
</asp:Repeater>

後臺
private ActivityManager am = new ActivityManager();
protected void Page_Load(object sender, EventArgs e)
{
int Id = Convert.ToInt32(Request.QueryString["Id"]);
ArrayList list = new ArrayList();
if (!IsPostBack)
{
list.Add(am.GetLatestNews(Id));
Repeater1.DataSource = list;
Repeater1.DataBind();

}
}


我這裡測試是可以顯示不同的圖片,你自己測試看看
大眼睛 2012-07-28
  • 打赏
  • 举报
回复
我断点调试了,点击第一个图片的时候会进入到productsInfo.aspx这个页面的load事件里,点击第二个图片的时候根本就没有进入load事件
暖枫无敌 2012-07-28
  • 打赏
  • 举报
回复
很明显是你的ProductsInfo.aspx这个页面的Page_Load函数中获取到的参数有问题

public void Page_Load(object sender,EventArgs e)
{
if(!IsPostBack)
{
string id = Request.QueryString["id"];
//利用此id进行页面数据加载
}
}
  • 打赏
  • 举报
回复
我怀疑是你的逻辑出问题了,不应该是缓存的事,缓存只是在地址相同的时候才会出现,但是从你代码中看,你的地址不同。所以觉得是你的逻辑的问题,建议你调试下。
大眼睛 2012-07-28
  • 打赏
  • 举报
回复
<ItemTemplate>
<li>
<a href='ProductsInfo.aspx?id=<%#Eval("id") %>' target="_blank" >

<img alt="<%#Eval("name") %>"src= "<%#Eval("pic")%>" width="113px" height="147px">
<%#Eval("name") %>
</a>
</li>
</ItemTemplate>
如果只是回忆 2012-07-28
  • 打赏
  • 举报
回复
把你的代碼貼出來看看
大眼睛 2012-07-28
  • 打赏
  • 举报
回复
我就是这么绑的
如果只是回忆 2012-07-28
  • 打赏
  • 举报
回复
那你把http://localhost:8012/ProductsInfo.aspx?id=<%# Eval("id")%>
大眼睛 2012-07-28
  • 打赏
  • 举报
回复
可是这个不止两个呀,repeater里可以有n个,那怎么办??

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧