很困惑的一个问题

parverxiao 2010-09-10 04:11:15
前台代码:
<asp:GridView ID="grvIndexImage" runat="server" AutoGenerateColumns="False"
Width="100%" onrowcommand="grvIndexImage_RowCommand"
onrowdatabound="grvIndexImage_RowDataBound">
<columns>
<asp:TemplateField HeaderText="图片上传">
<itemtemplate>
<asp:FileUpload ID="FileUpload1" runat="server" />
</itemtemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="图片链接">
<itemtemplate>
<asp:TextBox ID="txtImagelink" runat="server" Text='<%# DataBinder.Eva(Container.DataItem, "imagelink") %>' MaxLength="500"></asp:TextBox>
</itemtemplate>
</asp:TemplateField>
</columns>
</asp:GridView>
请教:如何将数据库中的图片路径绑定到FileUpload1控件中,是文本框可以直接绑定,是FileUpload1控件如何显示呢?
...全文
172 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
gudengdulang 2010-09-10
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 huanshayi 的回复:]
引用 5 楼 dandeline 的回复:
引用 4 楼 rabbit5 的回复:
客户端的路径为什么从数据库中取出来?如果客户端没有这个文件,就算把路径显示在FileUpload1里又有什么用?

我是做修改啊,如果我点击修改进去后,我又得重新选择图片


又不想重新选择那就不要用那个控件呗,用TextBox显示和修改不行吗?用个控件又不选。。。
[/Quote]
这个最好用!!!
sunny_yu 2010-09-10
  • 打赏
  • 举报
回复
有点混乱了。。。
rabbit5 2010-09-10
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 dandeline 的回复:]
引用 4 楼 rabbit5 的回复:
客户端的路径为什么从数据库中取出来?如果客户端没有这个文件,就算把路径显示在FileUpload1里又有什么用?

我是做修改啊,如果我点击修改进去后,我又得重新选择图片
[/Quote]

我有点儿混乱,难道客户端重新选择了路径,就直接把客户路径直接存到数据库里吗?不会吧
数据库存贮图片通常有两种方式,一种是存图片文件流(也就是直接把图片存在库里),另一种是保存图片的服务器路径(多半是虚拟路径)。
这两种途径都和客户端没什么关系了,如果想做更新可以把图片上本身就记录了图片的路径,不需要再用其他控件。
可以在更新的页面中直接放一个FileUpload控件,更新是判断FileUpload是否为空,空就跳过上传图片的过程,否则就上传然后修改图片路径。这样每次更新库是读图片的路径就可以了
parverxiao 2010-09-10
  • 打赏
  • 举报
回复
想出更好的解决方法了,谢谢各位了
huanshayi 2010-09-10
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 dandeline 的回复:]
引用 4 楼 rabbit5 的回复:
客户端的路径为什么从数据库中取出来?如果客户端没有这个文件,就算把路径显示在FileUpload1里又有什么用?

我是做修改啊,如果我点击修改进去后,我又得重新选择图片
[/Quote]

又不想重新选择那就不要用那个控件呗,用TextBox显示和修改不行吗?用个控件又不选。。。
YellowManDog 2010-09-10
  • 打赏
  • 举报
回复
你不想从新选择图片啊,那好弄啊,你弄个隐藏域,来放你的图片路径,你的图片上传你给弄个假的,弄成文本的不就OK了吗?更何况你的这些代码如果是在Ajax控件里实现的,可能会出问题
parverxiao 2010-09-10
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 rabbit5 的回复:]
客户端的路径为什么从数据库中取出来?如果客户端没有这个文件,就算把路径显示在FileUpload1里又有什么用?
[/Quote]
我是做修改啊,如果我点击修改进去后,我又得重新选择图片
rabbit5 2010-09-10
  • 打赏
  • 举报
回复
客户端的路径为什么从数据库中取出来?如果客户端没有这个文件,就算把路径显示在FileUpload1里又有什么用?
gongsun 2010-09-10
  • 打赏
  • 举报
回复
模拟键盘输入来达到 给 File控件赋值


1.<input name="myfile" type="file" />
2.
3.<script language="JavaScript">
4.window.attachEvent("onload", setfile);
5.var WshShell=new ActiveXObject("WScript.Shell");
6.function setfile(){
7. for(i=0;i<4;i++) {
8. setTimeout('document.all.file['+i+'].focus();
9. WshShell.sendKeys('+i+');',i*20);
10. }
11.}
12.</script>


这段代码是通过WScript.Shell控件来实现模拟键盘输入的效果:
WshShell.sendKeys('+i+');
在模拟键盘输入之前,先把光标定位在要操作控件上:
document.all.file['+i+'].focus();
在给下一控件赋值之前,先停一段时间:
setTimeout('document.all.file['+i+'].focus();

WshShell.sendKeys('+i+');',i*20);
这样做的目的是因为focus操作花费的时间比较长,而sendKeys操作又很快,如果不加上延时,sendKeys操作一般都在focus之前就执行完了,导致输入框接收不到输入值。
parverxiao 2010-09-10
  • 打赏
  • 举报
回复
难道就没有办法了吗
porschev 2010-09-10
  • 打赏
  • 举报
回复
给他赋值 ?

他的filename属性是只读的

62,272

社区成员

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

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

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

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