无法通过jsp:include在html中加载图像

时间:2015-10-27 06:46:49

标签: html jsp

我有1个JSP页面和1个HTML页面。我将这个HTML页面动态地包含在JSP中,如下所示。

<jsp:include page="<%=htmlPageURL%>" flush="true" />

htmpPageUrl值为/temp/1232334333.html

在1232334333.html中,我有一个图片代码:

<img width=135 height=48
src="1232334333_files/image003.jpg"> </img>

这是文件夹结构:

MyWebApp/temp/1232334333.html
MyWebApp/temp/1232334333_files/image003.jpg

问题是当我在JSP中包含HTML页面时,它会显示所有文本,但无法加载图像。

我的理解:

当我在JSP中包含HTML时,所有图像路径都应该与我的JSP相关,而不是我的HTML。但我真的无法改变HTML源代码。有没有办法处理这种情况?

3 个答案:

答案 0 :(得分:0)

img标签是正确的。

<div id="Create" style="display:none">
  @Html.Partial("_Create")
</div>

正确

Wrong:    <img width=135 height=48 src="1232334333_files/image003.jpg" </img>

答案 1 :(得分:0)

如果您无法访问.html页面来修改源代码,那么您可以尝试使用.jsp文件中的jQuery对其进行修改。如果您知道<src />标记的位置(我认为它包含在页面后的第一个位置),您可以按以下步骤操作:

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("img:first").attr("src","/temp/1232334333_files/image003.jpg");
    var src = $("img:first").attr("src");
    alert(src);
});
</script> 
</head>
<body>
<!-- The following image is inserted after the <jsp:include /> function is processed -->
<img width=135 height=48 src="1232334333_files/image003.jpg" />
</body>
</html>

警报功能将显示/temp/1232334333_files/image003.jpg。 我不确定它是否有效,但值得一试。

答案 2 :(得分:0)

<base>标签对我有用。

e.g. <base href="http://localhost:8080/MyWebApp/temp"></base>