我试图通过Ajax调用将jsp页面包含到另一个页面中。 问题是,如果要包含的页面在html元素之间有一些空格,则会使插入失败。
例如,这是我的演示index.jsp:
function include() {
alert("Hello from include function.");
$.ajax({
type: "GET",
url: "Include",
success: function() {
alert("Ajax success function.");
$("#container").html("<jsp:include page='hello.jsp' />");
alert("Ajax end success function.");
}
});
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body>
<button onclick="include()">Include</button>
<div id="container" style="border: 1px solid red;"></div>
</body>
这是要包含的hello.jsp页面(元素标签之间没有空格或者包含会失败):
<p>Hello from the included file.</p><p>Hello from the included file.</p><p>Hello from the included file.</p>
servlet只有一个do-nothing(现在)doGet方法。
它对你们所有人都有同感吗?我的代码有问题吗? 还有其他工作方式可以完成同样的任务吗?
答案 0 :(得分:0)
<jsp:include page='hello.jsp' />
是服务器端代码。你不能在Javascript中这样做。
相反,您需要向该页面发出请求,然后将返回的HTML转储到您的元素中。