__^^^^^^^^^^关于页面传值问题^^^^^^^^^^__

nik_Amis 2008-06-11 08:34:45
左右两个Frame,左面Left.aspx里面是一个菜单树,右边是工作区
电击Left的树节点,右侧工作区会跳转到相应的页面,并用QueryString得到左面的节点的ID
我的问题是需要右侧页面一直可以取到这个ID
比如右侧第一个界面是一个UserList.aspx列表页面,可以很方便的Query到ID
但是对列表的其中一个条目进行Edit等操作会跳另外一个页面比如EditUser.aspx这个页面就不好拿到ID了

我先在总结下来的办法
1。增加HiddenField,在Edit页面取
这样比较麻烦
2。Session
也挺麻烦而且耗服务器资源。比1好些
3。Application
基本同2

所以想请问一下大家有什么其他好办法


...全文
351 65 打赏 收藏 转发到动态 举报
写回复
用AI写文章
65 条回复
切换为时间正序
请发表友善的回复…
发表回复
fly4free 2008-06-18
  • 打赏
  • 举报
回复
>>>但是对列表的其中一个条目进行Edit等操作会跳另外一个页面比如EditUser.aspx这个页面就不好拿到ID了

是通过点击“结果列表每行都有的按钮”跳到另一个页面的吗?

那你把ID什么的通过<%#Eval('ID')%>赋给按钮的CommandArgument
然后,点击的时候,会有RowCommand事件,在事件处理里根据e.CommandArgument构造目的url,然后在Response.Redirect(url);



或者,
在RowDataBound事件处理中,给按钮增加onclick属性,在这里取ID值构造url,或url的一部分,然后在客户端用js控制跳转……
woshigefantong 2008-06-18
  • 打赏
  • 举报
回复
我也比较喜欢session
sxmonsy 2008-06-18
  • 打赏
  • 举报
回复
用Session吧,简单快捷方便.
叶子 2008-06-18
  • 打赏
  • 举报
回复
这种情况我一般会选择用session
china_k1 2008-06-18
  • 打赏
  • 举报
回复
1、可以用URL传值
2、也可以用Cookie
3、还可以单独定义一个记录ID的属性
「已注销」 2008-06-18
  • 打赏
  • 举报
回复
……坏了,上面这个回复,我删不掉了。


@_@
「已注销」 2008-06-18
  • 打赏
  • 举报
回复

你认为百度搜索的时候,点击下一页,是怎么传递关键词的?


@_@
lfywy 2008-06-18
  • 打赏
  • 举报
回复
me_nu456 2008-06-18
  • 打赏
  • 举报
回复
荆棘鸟 2008-06-17
  • 打赏
  • 举报
回复
用viewstate
nik_Amis 2008-06-17
  • 打赏
  • 举报
回复
我现在已经用Session做好了,但是我觉得这不是最好的方式,我还在尝试用别的办法。楼上有个说MasterPage的我觉得似乎有点意思。另外这个也是跟我架构设计有关系的,架构设计好的话,我想这些都可以继承下来的,不用这么麻烦。另外我的gridview都是跟ObjectDataSource绑定的,在继续URL传值是很简单的,但是工作量巨大,所以我不用这种方式。所以还是想看看有没有高手能有更灵活的办法。呵呵

谢谢大家的关注

jian_xiaowei 2008-06-17
  • 打赏
  • 举报
回复
高手很多啊???????????????
minhua1983 2008-06-17
  • 打赏
  • 举报
回复
我晕~这个...继续用URL传值...
例如:
<a href="UserList.aspx?id=1&page=1">Edit</a
>
我一般开发不用GIRDVIEW和他自己的按钮,用REPEATER或自己写都比较灵活,都用URL传。
xierfly 2008-06-17
  • 打赏
  • 举报
回复
偶一般情况下用session,有时候结合传递参数的形式。期待高手……
nik_Amis 2008-06-17
  • 打赏
  • 举报
回复
。。。。
都说了穿URL不现实,这么简单的问题还用来这里问么
levenwood 2008-06-17
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 honey52570 的回复:]
接着传URL参数啊
[/Quote]
http://localhost/DcsWeb/Configuration/BasicInfoTables.aspx?tbName=BI_PositionType&pkName=IDKey&busPKName=PositionName&moduleID=Configuration.Position&VoucherID=vch_BI_
http://localhost/DcsWeb/Configuration/BasicInfoTables_Edit.aspx?tbName=BI_PositionType&pkName=IDKey&busPKName=PositionName&moduleID=Configuration.Position&VoucherID=vch_BI_PositionType&pkValue=2fbcf15a-8b83-48c4-ac15-c8ee022ebd92
menusystem 2008-06-16
  • 打赏
  • 举报
回复
nik_Amis 2008-06-16
  • 打赏
  • 举报
回复
是的我现在就使用的Session
不过我碰到的恶心问题时TreeView无法在node.OnClick事件里面给Session付值
根本就没有OnCliCk事件,只有SelectedNodeChange两个事件,不知道MS那帮天才怎么想的,这个树做出来只是为了看么?

sunshine_anycall 2008-06-15
  • 打赏
  • 举报
回复
直接Session吧,这点时间都做完了。
tianzhiguo 2008-06-15
  • 打赏
  • 举报
回复
直接放到Session中
加载更多回复(43)

62,046

社区成员

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

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

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

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