在html可以直接在ie页面通过超链接打开word文档,为什么在jsp里面不行呢?

oraclelogan 2009-07-24 12:29:10
<a href="C:/Documents and Settings/Administrator/桌面/新建文件夹/1.doc" type="application/msword">打开word</a>

就是这个超链接,在ie中,如果是html的话,可以点检超链接在ie当前页面里面打开word文档;

但是如果是jsp页面的话,就不起作用,这是为什么呢?jsp里面还需要改什么东西吗?
...全文
2232 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
可能是编码的问题 参考下
ei0123 2011-04-06
  • 打赏
  • 举报
回复
是不是中文名文件,我测试了下 1.doc可以 但是新建.doc 就不行了。
yjq2008_ 2010-12-28
  • 打赏
  • 举报
回复
20楼正解啊。。WEB页面里不能调用除WEB项目以外的文件,除非特地写了那样的WEB应用。
oraclelogan 2009-07-29
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 java91 的回复:]
应该是这样
<a href=" <%=request.getContextPath()%>/java91/WORD/1.doc" >打开word </a>

上述java91是你的应用访问名称
[/Quote]

还是不行的,我跑在weblogic下面,不知道为什么啊?
oraclelogan 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xiaochengfu1 的回复:]
要用绝对路径
[/Quote]

我的本来就是绝对路径啊!
xiaochengfu1 2009-07-24
  • 打赏
  • 举报
回复
要用绝对路径
java91 2009-07-24
  • 打赏
  • 举报
回复
加完整协议头

file:///C:/Documents%20and%20Settings/Administrator/桌面/新建文件夹/1.doc
java91 2009-07-24
  • 打赏
  • 举报
回复
应该是这样
<a href=" <%=request.getContextPath()%>/java91/WORD/1.doc" >打开word </a>

上述java91是你的应用访问名称
java91 2009-07-24
  • 打赏
  • 举报
回复
楼主你反复提到HTML可以,但JSP不行。

第一,你不能在本地HTML试。你需要发布成WEB应用再试。

当你发布成WEB应用试后,你发现HTML也是不行的。

在WEB页面中,根本不允许指定本地目录文件,只能是当前WEB应用下的文件才可开放访问。你需要把文件考到WEB应用下,再通过相对路径提供访问地址。
如下目录:

JAVA91
--IMAGES
--JSP
--SRC
--WORD
--WEBROOT
----WEB-INF
--------web.xml
--------classess

你可将你的文件考入WORD目录下。
在JSP中可以这样:

<a href=" <%=request.getContextPath()%>/WORD/1.doc" >打开word </a>

楼主你基础知识要好好理解下。
fancyoo1 2009-07-24
  • 打赏
  • 举报
回复
如果不行应该是路径问题,反正链接可以直接打开的
jinchun1234 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 lg312200538 的回复:]
楼主你的目录下有文件吗?确认下.....还有华仔这样写在本地机上应该是对的,但放到服务器上就不对了.这个我以前处理过,最好把用http://+IP+端口才是最好的
[/Quote]
不在本机上我倒是没有测试,实在不行你就使用流方式下载算了
努力 2009-07-24
  • 打赏
  • 举报
回复
楼主你的目录下有文件吗?确认下.....还有华仔这样写在本地机上应该是对的,但放到服务器上就不对了.这个我以前处理过,最好把用http://+IP+端口才是最好的
jinchun1234 2009-07-24
  • 打赏
  • 举报
回复
我说了呀,你要使用相对路径
<a href=" <%=request.getContextPath() %>/你在你项目下建的文件夹/1.doc" >打开word </a>
我测试过了,你再试试。
oraclelogan 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 jinchun1234 的回复:]
引用 11 楼 oraclelogan 的回复:
引用 7 楼 wuyashuan 的回复:
引用 6 楼 jinchun1234 的回复:
可以呀
  <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
  <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  <html>
  <head>
  <meta http-equiv="Content-Type" content="application/msword">

  <title>Insert title here  </title>
  </head>
  <body>
  <a href="D:/1.doc" type="application/msword">打开word  </a>
  </body>
  </html>

LS的这位我试过了,可以的啊,不知道楼主想要的是什么答案。。。 。。。


你这是在html页面,我说的是jsp里面啊!html页面是可以的,但是jsp里面不行!为何?



这不是jsp难道还是html呀兄弟?????
[/Quote]

是jsp文件, 我把你的样例copy过来,在我本地的tomcat下运行,我是通过ie6的方式打开的,但是点击的时候,打不开word文档,没有任何反应。
jinchun1234 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 oraclelogan 的回复:]
引用 7 楼 wuyashuan 的回复:
引用 6 楼 jinchun1234 的回复:
可以呀
  <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
  <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  <html>
  <head>
  <meta http-equiv="Content-Type" content="application/msword">

  <title>Insert title here  </title>
  </head>
  <body>
  <a href="D:/1.doc" type="application/msword">打开word  </a>
  </body>
  </html>

LS的这位我试过了,可以的啊,不知道楼主想要的是什么答案。。。 。。。


你这是在html页面,我说的是jsp里面啊!html页面是可以的,但是jsp里面不行!为何?
[/Quote]


这不是jsp难道还是html呀兄弟?????
qizhicong2 2009-07-24
  • 打赏
  • 举报
回复
html文件放在本地用IE直接打开好像可以,

html文件放在web服务器上,用IE远程访问应该不行,

网页中能打开本地的程序,没有安全性,网页中启动关机程序,那不浏览有的恶意网页关机了。
oraclelogan 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 jinchun1234 的回复:]
引用 8 楼 jinchun1234 的回复:
发现一个问题,刚才我发那个例子在Myeclipse的浏览器里面可以,但是在iE里面就不可以了,在火狐浏览器里面也是可以的。

现在我修改为如下就可以在以上都可以运行了,使用项目的相对路径。
<a href=" <%=request.getContextPath() %>/jinchun/1.doc" >打开word </a>

至于原因还在思考中。谁知道可以告知下


lz的是我说这个问题吗?
[/Quote]

说下,我是部署在weblogic下面,不是部署在tomcat下面的。
oraclelogan 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wuyashuan 的回复:]
引用 6 楼 jinchun1234 的回复:
可以呀
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="application/msword">

<title>Insert title here </title>
</head>
<body>
<a href="D:/1.doc" type="application/msword">打开word </a>
</body>
</html>

LS的这位我试过了,可以的啊,不知道楼主想要的是什么答案。。。 。。。
[/Quote]

你这是在html页面,我说的是jsp里面啊!html页面是可以的,但是jsp里面不行!为何?
小水晶 2009-07-24
  • 打赏
  • 举报
回复
<meta http-equiv="Content-Type" content="application/msword">
jinchun1234 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jinchun1234 的回复:]
发现一个问题,刚才我发那个例子在Myeclipse的浏览器里面可以,但是在iE里面就不可以了,在火狐浏览器里面也是可以的。

现在我修改为如下就可以在以上都可以运行了,使用项目的相对路径。
<a href=" <%=request.getContextPath() %>/jinchun/1.doc" >打开word </a>

至于原因还在思考中。谁知道可以告知下
[/Quote]

lz的是我说这个问题吗?
加载更多回复(5)

81,090

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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