在一个使用ssm框架编写的Maven项目中,在jsp页面必须放在WEB-INF中的前提下,我如何使用ajax访问WEB-INF下的名为buySeat.jsp的jsp页面?我会提供一个我在Controller中写好的跳转页面方法如下:@Controller public class OrderController { @RequestMapping("/jump") public String jump(String jump) { return jump; } } 并帮我优化完这段ajax代码 function initSchedule(obj){ var plist = $(".plist").find("tbody"); for(var i = 0;i < obj.data.length;i++){ plist.append( "<tr class=\"\">" + "<td> <span class=\"begin-time\">"+ obj.data[i].schedule_startTime +"</span> <br> </td>" + "<td> <span class=\"lang\">" + obj.data[i].schedule_movie.movie_country +"</span> </td>" + "<td> <span class=\"hall\">" + obj.data[i].schedule_hall.hall_name + "</span> </td>" + "<td> <span class=\"sell-price\"> <span class=\"stonefont\">" + obj.data[i].schedule_price + "</span> </span> </td>" + "<td> <a href="+ obj.data[i].schedule_id +"\"./buySeat?schedule_id=\" class=\"buy-btn normal\">选座购票</a> </td>" + "</tr>" ); } }
时间: 2023-10-08 07:04:38 浏览: 109
如果你必须将JSP页面放在WEB-INF目录下,并且想要使用Ajax访问这个名为buySeat.jsp的页面,你可以按照以下步骤进行操作:
1. 在Controller中,将jump方法修改如下:
```java
@Controller
public class OrderController {
@RequestMapping("/jump")
public ModelAndView jump(String jump) {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("buySeat");
return modelAndView;
}
}
```
这样,当你访问/jump路径时,会返回名为buySeat的JSP页面。
2. 修改前端代码中的Ajax请求部分:
```javascript
function initSchedule(obj) {
var plist = $(".plist").find("tbody");
for (var i = 0; i < obj.data.length; i++) {
plist.append(
"<tr class=\"\">" +
"<td> <span class=\"begin-time\">" + obj.data[i].schedule_startTime + "</span> <br> </td>" +
"<td> <span class=\"lang\">" + obj.data[i].schedule_movie.movie_country + "</span> </td>" +
"<td> <span class=\"hall\">" + obj.data[i].schedule_hall.hall_name + "</span> </td>" +
"<td> <span class=\"sell-price\"> <span class=\"stonefont\">" + obj.data[i].schedule_price + "</span> </span> </td>" +
"<td> <a href=\"#\" onclick=\"jumpToBuySeat('" + obj.data[i].schedule_id + "')\" class=\"buy-btn normal\">选座购票</a> </td>" +
"</tr>"
);
}
}
function jumpToBuySeat(scheduleId) {
$.ajax({
type: "GET",
url: "./jump",
data: { jump: "buySeat.jsp" },
success: function() {
window.location.href = "./buySeat?schedule_id=" + scheduleId;
}
});
}
```
在这里,我们将a标签的href属性设置为"#",并添加了一个onclick事件,调用名为`jumpToBuySeat`的JavaScript函数。该函数使用Ajax请求/jump路径,并在成功回调中通过`window.location.href`将页面重定向到"./buySeat?schedule_id=" + scheduleId。
请确保在web.xml中配置了正确的DispatcherServlet和视图解析器,以便正确地处理请求和返回JSP页面。
阅读全文