首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 ><img >不在JSP中工作

<img >不在JSP中工作
EN

Stack Overflow用户
提问于 2012-02-03 19:11:44
回答 1查看 16K关注 0票数 2

当我不显示JSP文件映像的相对路径时,我使用的是eclipse。但是当我使用到图像的绝对路径时,它只在Eclipse的内部浏览器中工作,但在其他浏览器Firfox、IE等上仍然不能工作。

EN

回答 1

Stack Overflow用户

发布于 2012-02-03 19:21:21

显然,相对路径是错误的。

您需要认识到,<img src>应该引用一个公共URL,而不是URL服务器的本地磁盘文件系统。需要加载映像的是who浏览器,而不是who服务器本身。如果这个公共URL是相对的,那么它将相对于当前的请求URL进行解析,这个URL就是在浏览器的地址栏中看到的。相对于JSP在本地磁盘文件系统中的位置,它没有被解析。

假设您正在打开这个URL上的JSP页面

http://localhost:8080/contextname/some.jsp

并且该图像以其原始形式在此URL上可访问。

http://localhost:8080/contextname/images/some.png

然后,需要在JSP中引用该映像,如下所示

代码语言:javascript
复制
<img src="images/some.png" />

但是如果JSP是由这个URL打开的

http://localhost:8080/contextname/somefolder/some.jsp

然后,需要在JSP中引用该映像,如下所示

代码语言:javascript
复制
<img src="../images/some.png" />

为了避免每次使用相对路径,您也可以只使用域相对URL。您可以通过在图像URL前加上上下文路径来做到这一点:

代码语言:javascript
复制
<img src="${pageContext.request.contextPath}/images/some.png" />

这将在生成的HTML中结束,如下所示(右键单击浏览器中的JSP,查看源代码)

代码语言:javascript
复制
<img src="/contextname/images/some.png" />

另请参阅:

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9134148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档