(AJAX - Jsp包含)如何使用Ajax包含JSP?

时间:2016-06-15 22:04:31

标签: html ajax jsp include

我试图通过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方法。

它对你们所有人都有同感吗?我的代码有问题吗? 还有其他工作方式可以完成同样的任务吗?

1 个答案:

答案 0 :(得分:0)

<jsp:include page='hello.jsp' />是服务器端代码。你不能在Javascript中这样做。

相反,您需要向该页面发出请求,然后将返回的HTML转储到您的元素中。