【发布时间】:2014-10-11 10:08:14
【问题描述】:
我每 10 秒重新加载一个 JSP 页面,我意识到每次它都会重新加载脚本文件并增加大小,最后我的页面崩溃。
这是我要重新加载的jsp和脚本-
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<%
//JSP code
long ts = (new Date()).getTime(); //Used to prevent JS/CSS caching
%>
<title>Login Success</title>
<link href="assets/css/bootstrap-united.css?<%=ts %>" rel="stylesheet" />
<link href="assets/css/customtable.css?<%=ts %>" rel="stylesheet" />
<script src="bootstrap/js/jquery-1.11.1.min.js?<%=ts %>"></script>
<script src="bootstrap/js/bootstrap.js?<%=ts %>">
</script>
</head>
<body>
<div id="buntha">
<div class="navbar navbar-default">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse"
data-target=".navbar-responsive-collapse">
<span class="icon-bar"></span> <span class="icon-bar"></span> <span
class="icon-bar"></span>
</button>
</div>
<div class="navbar-collapse collapse navbar-responsive-collapse">
<form class="navbar-form navbar-right">
<input type="text" class="form-control" placeholder="Search">
</form>
<ul class="nav navbar-nav navbar-right">
<li><a href=".index.html">Home</a></li>
<li><a href="signup.html">Signup</a></li>
<li class="active"><a href="login.html">Login</a></li>
<li class="dropdown"><a href="#" class="dropdown-toggle"
data-toggle="dropdown">Explore<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="#">Contact us</a></li>
<li class="divider"></li>
<li><a href="#">Further Actions</a></li>
</ul></li>
</ul>
</div>
<!-- /.nav-collapse -->
</div>
然后我的脚本重新加载-
<script type="text/javascript">
var url = '/Motion/success.html'
$(document).ready(function() {
$.ajaxSetup({ cache: false });
var username = '';
var password = '';
var cubename = '';
var status = 'load';
setInterval(function() {
$("#buntha").load('/Motion/success.html',
{username:'<%=userName%>',password:'<%=Password%>',status:status})
.fadeIn("slow");
}, 10000);
});
</script>
还有我的 Controller Post 方法-
将控制器更改为返回 JSON
@RequestMapping(value="/success", method=RequestMethod.POST,headers="Accept=*/*")
public Model success(@Valid @ModelAttribute("username") String username,@Valid @ModelAttribute("password") String password,@Valid String cubename,@Valid String status, BindingResult result,Model model) {
log.info("Posting Data in Success With "+username+" passowrd "+password+" Cubename "+cubename+" status "+status);
boolean found = studentService.findByLogin(username, password);
if (found) {
if(cubename != null)
updateDataBaseContent(username,cubename,status);
StudentLogin studentLogin = new StudentLogin();
studentLogin.setUserName(username);
studentLogin.setPassword(password);
List<Cube> cubes = cubeService.getCubes();
model.addAttribute("name", studentLogin);
model.addAttribute("message", cubes);
}
return model;
}
如何避免重新加载所有脚本文件 无论如何,我只调用 div 标签来加载,但为什么它加载 netire 页面。 我对 Spring 和 Web 很陌生,所以这可能是一个愚蠢的查询,但我还不能破解它。
【问题讨论】:
标签: javascript jquery spring jsp