大大们进来看看,帮帮我啊!

云上人间钦自赏 2007-12-10 03:36:54
通过asp.net 做了一个动态查询数据库,自动生成table并填充数据的首页,我现在想先查询数据库看看是否有上传的文档,
如果有的话,点击文档标题提示是否下载,点“是”当谈可以正常下载了。
如果没有的话,点击文档标题转入新页面打开内容。
下边的情况已经实现了,现在就是点击提示下载问题了。
如果在aspx页面添加一个HyperLink,指定
NavigateUrl='<%# "~"+DataBinder.Eval(Container.DataItem,"绑定字段")%>'
通过这个字段就可以实现下载,现在呢,因为这个网页是动态生成的,在cs文件中怎么绑定就不会了,
拜托知道的大大给点建议。感谢!
...全文
130 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
问题自己化解了,在动态首页做了个链接,练到另外一个页面,在这个页面的前台进行数据库字段绑定。
感谢各位给我提供了很多参考,开始散分。
lovehongyun 2007-12-10
  • 打赏
  • 举报
回复
@_@
  • 打赏
  • 举报
回复
不对哦,yqlvcxl_2007 ,我不是想现实不同的链接,而是,有的可以链接打开新页面,有的直接可以下载
yqlvcxl_2007 2007-12-10
  • 打赏
  • 举报
回复
对于第一种写法:
比如说你是想根据绑定的字段值的不同来显示不同的连接;
如:id = 1 ,2,3这三种情况;
id = 1时 想显示www.sina.com.cn id=2
id = 2时 想显示www.sohu.com
id = 3时 想显示www.163.com


NavigateUrl=' <%# test(DataBinder.Eval(Container.DataItem,"id")) %> '


则在这里你可以这样写
protected string test(object obj)
{
if(obje != null)
{
switch (obje.ToString())
{
case "1":
return @"Http://www.sina.com.cn";
case "2":
return @"www.sohu.com";
......
}
}
return "http://www.sina.com.cn";
}
  • 打赏
  • 举报
回复
前台代码:
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title><% =Session["page_title_sub"].ToString().Trim() + " - " + Session["page_title"].ToString().Trim()%></title>
<link rev="stylesheet" media="all" href="style/default.css" type="text/css" rel="stylesheet" />
</head>
<header:pageHeader ID="PageHeader" runat="server" />
<body>
<form id="form1" runat="server">
<div style="text-align:center; width:900px">

<div class="table">
</div>
<asp:Table ID="Table4" runat="server"><asp:TableRow><asp:TableCell><img alt="" src="images/line/WZLB2.gif"/></asp:TableCell></asp:TableRow>
</asp:Table>
</div>
<asp:Table ID="Table1" runat="server" Font-Size="15px" ForeColor="#3F7045" Width="900px" >
</asp:Table><br />
<asp:Table ID="Table3" runat="server" Width="900px">
<asp:TableRow>
<asp:TableCell Font-Size="15px" ><img alt="" src="images/line/DZBLB.gif"/></asp:TableCell>
</asp:TableRow>
</asp:Table>
<hr style="width:900px"/>
<asp:Table ID="Table2" runat="server" Width="900px" Font-Size="12px">
</asp:Table>

</form>
</body>
<foot:pageFooter ID="pageFooter" runat="server" />
</html>
就这么几个控件,然后在后台动态生成table,接着给自动生成的table赋值,
最后把自动生成的table填充到前台table控件第一个单元格中的。方法笨了点。
lizheng__114 2007-12-10
  • 打赏
  • 举报
回复
DataGrid里有个事件,这个事件是在绑定数据时生成的,你注册这个事件,然后在事件代码中加:
if (e.Row.RowType == DataControlRowType.DataRow)
e.Row.Cells[3].Attributes.Add("onclick", "return confirm('您确定要下载吗?');");
我这是举个例子,在gridview中是这么写的,datagrid我忘记了,自己查查吧
  • 打赏
  • 举报
回复
太感动了,都有点激动,没想到第一次发帖,就有这么多人来帮忙。
问题解决会马上结贴的,刚学会怎么结贴。- -
  • 打赏
  • 举报
回复
9楼的是定义个动态的超链接,不知道我看错没有,
看来我还是没能表达清楚自己的意思。
  • 打赏
  • 举报
回复
没明白8楼说的,不好意思,我懂的太少了。

我现在就是想在后台绑定数据库字段的,
NavigateUrl='<%# "~"+test(DataBinder.Eval(Container.DataItem,"绑定字段")) %> '
上边这句话的绑定是在前台实现过了的,现在想改在后台实现点击后弹出保存询问对话框,保存的是服务器上的文档,
文档的路径已经存在数据库中了。
不知道我说明白没有。

谢谢你们的关注!
yqlvcxl_2007 2007-12-10
  • 打赏
  • 举报
回复
还有一种方式,就是麻烦些,你可以直接在后台写

一般我是这样写的:
前台:
<asp:Table ID="tbLink" Width="100%" BorderWidth="0" runat="server">
</asp:Table>

后台:
TableRow trRow = new TableRow();
TableCell tdCell = new TableCell();

HyperLink link = new HyperLink();
link.NavigateUrl = "http://www.sina.com.cn";
tdCell.Controls.Add(link );

trRow.Cells.Add(tdCell);

tbLink.Rows.Add(trRow);

这样的你可以随意在后台处理
yqlvcxl_2007 2007-12-10
  • 打赏
  • 举报
回复
或者你可以在后台写一个方法去包含你的绑定

protected string test(object obj)
{
//你的处理逻辑
//return 经过处理的Url
}

NavigateUrl=' <%# "~"+test(DataBinder.Eval(Container.DataItem,"绑定字段")) %> '
  • 打赏
  • 举报
回复
不会搞她的属性涅,要是能到随便搞的程度就好咯。

谢谢关注!
  • 打赏
  • 举报
回复
真的可以吗?“字符文本中的字符太多”,我刚接触.net,受累说的详细点,浅显点,呵呵
leaohong 2007-12-10
  • 打赏
  • 举报
回复
那就动态生成HyperLink好了,属性随便你怎么搞了
  • 打赏
  • 举报
回复
ls,还要写个download.asp吗?
cpio 2007-12-10
  • 打赏
  • 举报
回复
NavigateUrl=' <%# DataBinder.Eval(Container.DataItem,"绑定字段名", "download.aspx?downloadid={0}")%> '
  • 打赏
  • 举报
回复
对,这可以绑定,这只是在.aspx中,现在想在.cs中绑定,贪心吧。
qq22345111 2007-12-10
  • 打赏
  • 举报
回复
NavigateUrl=' <%# "~"+DataBinder.Eval(Container.DataItem,"绑定字段")%> '
这样已经是动态绑定了!

62,046

社区成员

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

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

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

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