我想在使用apache tile调用ajax时使用html内容,我的代码如下, 我的ajax功能
$.ajax({
url : '/home',
dataType : 'html',
success : function(data) {
console.log(data);
}
});
Java文件
@RequestMapping(value="/home", method=RequestMethod.GET)
public @ResponseBody String getHomePage(HttpServletRequest request, HttpServletResponse response, ModelMap model) {
model.addAttribute("name", "demo");
return "home";
}
jsp page(home.jsp)
<html>
<head></head>
<body>${name}</body>
</html>
空模板文件(emptyTemplate.jsp)
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tile" %>
<tile:insertAttribute name="body" />
apache文件
<definition name="home" extends="emptytemplate">
<put-attribute name="body" value="/WEB-INF/home.jsp" />
</definition>
<definition name="emptytemplate" template="/WEB-INF/templates/emptytemplate.jsp">
<put-attribute name="body" />
</definition>
当我打电话给#34; home&#34;来自ajax的网址可以返回&#34; home&#34;,这个&#34; home&#34;是apache文件的定义之一,所以首先在apache文件中找到。所以得到&#34; home&#34; apache文件中的定义,可以返回&#34; home.jsp&#34;文件。
所以我的问题是ajax响应是&#34; home&#34;但我想要主页html内容而不是&#34; home&#34;字符串。
那怎么可能呢?