首页 新闻 会员 周边 捐助

页面传值,,,,,,,

0
悬赏园豆:100 [已解决问题] 解决于 2011-11-17 17:40

我把五个表里面的数据查出来了,,在首页的一个文本框里面显示标题,,,标题是一个链接,,,点击跳到下载页面。。。然后在下载页面有详细内容,,,,怎么传值过去???我只知道传一个表的值过去?

<a href="Donwload.aspx?id=<%#Eval("C_ResourceID")%>" target="_blank">
                       <%#(DataBinder.Eval(Container.DataItem,"C_Title").ToString().Length > 22) ? Convert.ToString(DataBinder.Eval(Container.DataItem, "C_Title ")).Substring(0, 22) + "... " : DataBinder.Eval(Container.DataItem, "C_Title ").ToString()%> <asp:Label ID="Label1" runat="server" text-align:right Text='<%#DateTime.Parse(Eval("C_DateTime").ToString()).ToString("yyyy-MM-dd")%>'>

这个是首页绑定的代码。。。。。。。。。。要是想传五个表的数据过去??怎么写?

次时代的主页 次时代 | 初学一级 | 园豆:5
提问于:2011-08-09 15:47
< >
分享
最佳答案
0

你可以直接form表单传值  这样的话不会又什么URL的长度限制   再大也没关系  

<form id="form1" runat="server" action="目标页面">
<数据服务器控件>
<a href="Donwload.aspx?id=<%#Eval("C_ResourceID")%>" target="_blank">
<%#(DataBinder.Eval(Container.DataItem,"C_Title").ToString().Length > 22) ? Convert.ToString(DataBinder.Eval(Container.DataItem, "C_Title ")).Substring(0, 22) + "... " : DataBinder.Eval(Container.DataItem, "C_Title ").ToString()%> <asp:Label ID="Label1" runat="server" text-align:right Text='<%#DateTime.Parse(Eval("C_DateTime").ToString()).ToString("yyyy-MM-dd")%>'>
</数据服务器控件>
</form>

你可以试试  然后在目标也获取传过去的参数  request.form["名字"];

收获园豆:100
等待是一生最初的苍老 | 初学一级 |园豆:3 | 2011-08-09 17:52
其他回答(5)
0

五个表的数据?什么意思? URL传递参数的长度是有限制的   还是说  你想要的结果是 Donwload.aspx?id=<%#Eval("C_ResourceID")%>&Title=<%#Eval("C_Title")%>" 

用“&”可以分开传递的URL的

上面那个示例中  你可以取到  Request.QueryString["id"]  和Request.QueryString["Title"]  如果你是要取到5个传递的参数的话 用上面那个示例就可以了

飞翔的鱼 | 园豆:3 (初学一级) | 2011-08-09 15:55
我的意思是,我有五个表,一个试卷一个课件,一个教案,,等等、这个几个查出来了,,,在首页的一个框框里面显示标题,然后点击那个标题跳到下载页面,,,,怎么在下载页面分辨是那个表的数据呢??还有,首页怎么一下传5个ID过去呢
支持(0) 反对(0) 次时代 | 园豆:5 (初学一级) | 2011-08-09 16:02
嗯 我上面的例子不是显示出来了吗 上面的方式是传递两个 你可以接着后面写 一直写满5个 传递的ID 你可以自己命名 嗯 然后你可以根据自己命名传递的ID 来区分 例如上面传递了一个ID 还有一个Title过去 你可以在下载页面 用Request.QueryString["id"] 取值了来进行判断是ID 还是Title的
支持(0) 反对(0) 飞翔的鱼 | 园豆:3 (初学一级) | 2011-08-09 16:08
正解,楼主最好再查查 页面传参。或者你直接用session
支持(0) 反对(0) 西安-DB | 园豆:4 (初学一级) | 2011-08-10 08:51
0

诚如楼上所说,url传参是有长度限制的,中文会乱码,且不安全。

换个思路

你说你查了5张表的数据(如果这些数据不必要在首页显示是不用查询出来的),

你可以将查询这5张表数据的依据(一般就是一些主键值什么的)通过url传到下载页面。

在下载页面根据传过来的这些依据来进行查询。

写代码的小2B | 园豆:4377 (老鸟四级) | 2011-08-09 16:07
0

你可以传个Type过去啊,1代表试卷,2代表课件。。。。。在Donwload.aspx 页面 用Request.QueryString["Type"]接到后,依据type和ID再查询一次啊

黑炭xiaOt | 园豆:215 (菜鸟二级) | 2011-08-09 16:14
0

你是想点击跳到下载页面,不是传一个资源id就行了?然后下载。

顾晓北 | 园豆:10898 (专家六级) | 2011-08-09 17:32
0

你可以传个Type过去啊,1代表试卷,2代表课件。。。。。在Donwload.aspx 页面 用Request.QueryString["Type"]接到后,依据type和ID再查询一次啊,

这个方法应该可以的啊,楼主试试看

八神吻你 | 园豆:205 (菜鸟二级) | 2011-08-10 13:56
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册