请高手帮帮忙
我用JSP的jsp:include能把HTML正常显示出来
可是对于此HTML里面的图片却不能正常显示
我单独打开此HTML,图片可以正常显示,就是引用后用JSP打开显示不了!
JSP里是这么写的 <jsp:include page="/img/newsHtml/新闻.htm"/>
HTML里面的图片是这么引用的
<img width=96 height=96
src="../newsHtml/新闻.files/image002.gif" alt="Frog 2.bmp" v:shapes="图片_x0020_2">
请问如果要是用JSP来调用HTML的话,对于图片还有什么需要注意的么?
图片就在“新闻.files”这个文件夹里
我用JSP的jsp:include能把HTML正常显示出来
可是对于此HTML里面的图片却不能正常显示
我单独打开此HTML,图片可以正常显示,就是引用后用JSP打开显示不了!
JSP里是这么写的 <jsp:include page="/img/newsHtml/新闻.htm"/>
HTML里面的图片是这么引用的
<img width=96 height=96
src="../newsHtml/新闻.files/image002.gif" alt="Frog 2.bmp" v:shapes="图片_x0020_2">
请问如果要是用JSP来调用HTML的话,对于图片还有什么需要注意的么?
图片就在“新闻.files”这个文件夹里
解决方案 »
- 是不是每个页面都得要导入导航条?
- 数据库中的状态位一般怎么处理
- 如何在JSP页面上显示ee这个String变量啊?
- 请教大家几个问题?(急)
- 高手帮帮忙啊,明天要交作业。一个分页显示JSP程序编译出错。急!!!!!
- 求救各位大虾,关于BBS的详细设计文档!
- jsp servlet bean 学的时候都用什么项目练手?
- 请问:我用date的getyear()函数的得到的为什么是:103而不是2003 呢?
- 如何将用dom解析的Document对象中的内容输出到xml文件中?
- 普通的ssh开发的项目转成maven项目
- DTO字段类型与数据库列名不一致的问题
- jsp连接access数据库问题 麻烦各位高手看完
我把中文名改成了newsData这个文件
在MyEclipse里面打开HTML文件,图片都能在预览里看到,可是就是运行的时候用IE打开没有显示啊
,唉!无奈了,请高手帮忙指点
src="C:/Program Files/Apache Software Foundation/Tomcat 6.0/webapps/news/img/newsHtml/newsData/image002.gif" alt="Frog 2.bmp" v:shapes="图片_x0020_2">
src="img/newsHtml/新闻.files/image002.gif"
要么这里你使用相对路径来写。当然你也可以写全路径,但不是所谓的绝对路径,这是不对的,因为你的Web工程是不有权限访问该工程之外的东西的,所以这里你应该写你的服务路径,比如:http://localhost:8080/你的工程名。等你部署上线了你得写你的域名,这样才能访问啊,否则你哪见过有网站把图片的路径设置成C:/之类的啊!如果你项目中的图片比较多的话,建议专门做一个图片服务器,也就是一个空的Web项目,专门用来存放各种图片,其他地方要访问的来访问这个项目。
JSP引用HTML的话,图片不会显示么?
JSP里是这么引用的 <jsp:include page="/img/newsHtml/newsData.htm"/>
html页面里是这么引用的<img width=96 height=96
src="img/newsHtml/newsData/image002.gif" alt="Frog 2.bmp">
<img width=96 height=96
src="img/newsHtml/newsData/image002.gif">
src="img/newsHtml/newsData/image002.gif">
上面的是我运行程序后,打开IE界面拷贝出来的
我用MYECLIPSE编辑的时候,在MYECLIPSE预览里能看到图片,
但是一运行的时候,用IE正常跑就出不来了。
我引用的HTML是我用WORD编辑后另存为的HTML格式的
这个有影响么?
拷贝出来的绝对路径是
http://localhost:8080/TestServlet/img/newsHtml/newsData/image002.gif
你确认一下,image002.gif和newsData.htm是在同一级目录下不
<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<img width='96' height='96'
src="img/newsHtml/newsData/image002.gif" alt="Frog 2.bmp" v:shapes="图片_x0020_2">
</body>
</html>
src="img/newsHtml/newsData/image002.gif" alt="Frog 2.bmp" v:shapes="图片_x0020_2">
src="/news/img/newsHtml/newsData/image002.gif" alt="Frog 2.bmp" v:shapes="图片_x0020_2">
../项目名/文件(子文件)/图片名.图片格式
src="../img/newsHtml/newsData/image002.gif" alt="Frog 2.bmp" v:shapes="图片_x0020_2">
<img width='96' height='96'
src="/news/img/newsHtml/newsData/image002.gif" alt="Frog 2.bmp" v:shapes="图片_x0020_2">
比如:你要从A.html中引用B.html,而B.html中含有图片C。
你要确保对图片的引用是以A.html为基准的。
我的A.HTML和B.HTML不在一个路径下的可以么?而图片C是在B的路径里的子目录下的!
FRONT文件夹和IMG文件夹同级。
所以在jsp中设定路径的时候,应该先返回上一级目录 ../然后调用IMG目录。所以 src = "../IMG~~~~~"在路径上应该是没什么问题。想问楼主一下你显示的画面上图片的位置是红叉还是什么都不表示?
你用<jsp:include >这个用法是讲新闻.HTML内的方法复制到Servlet,不是将你的网站调用过来,希望你能搞清楚而<%@include >就不一样了,它是讲你对应的整个网站的源代码全部拷贝过来,所以要调用网站的话还是用这个方式吧。
动态引用,page的参数可以包含变量。在运行期间被包含页面才加载进来,相当于新闻.htm的内容被复制过来。<%@include file="/img/newsHtml/新闻.htm" %>
静态包含,page的参数必须是确定的值。在jsp被编译期间就确定了,也就是说,编译jsp的时候,新闻.htm的内容就被插入在当前位置,一起参与编译。
提议你把<jsp:include page="/img/newsHtml/新闻.htm"/> URL的第一个/去掉,改成
<jsp:include page="img/newsHtml/新闻.htm"/> ,而且路径中不要出现任何非ASCII的中文字符、空格字符。