[英]Refreshing JSP variable without reloading a page
在我的Web应用程序中,我使用Java作为后端。 在网页上,用户可以选择,删除或编辑一个/多个服务器。 从服务器读取有关这些服务器的信息。 Java控制器将JSON文件发送到JSP页面,并显示要显示的服务器信息。
@RequestMapping(value = "/configurations.html", method = RequestMethod.GET) public ModelAndView chooseServers(ModelMap model) throws Exception {
try {
//reads objects from configuration and sends to the web page as JSON file.
String result = mapper.writeValueAsString(servers);
System.out.println(result);
model.addAttribute("serversList", result);
} catch (Exception e) {
e.printStackTrace();
}
return new ModelAndView("configurations"); }
数据保存到变量中,如下所示:
<html ng-app="homepage">
<head>...</head>
<body id="body" data-serversList='${serversList}' id="configurationsPage">
...</body>
</html>
我在JS中读到这些数据如下:
var items = new Array();
var main = function(){
var information = $("body").attr("data-serversList");
var serversJson = JSON.parse(information);
for (var i = 0; i < serversJson.list.length; i++){
items.push({id: serversJson.list[i].id, text: serversJson.list[i].name});
}
}
$(document).ready(main);
这是我更新服务器端数据的方式:
$.ajax({
url: 'addServer.do',//the value of SpringMVC controller
data: ({serverObjectString : serverObjectString})
});
用户更改服务器,删除,添加或编辑任何服务器后,数据将在服务器端重新加载。 但在用户方面,除非我刷新,否则它保持不变。 但是我正在使用AngularJS,这就是为什么我陷入困境 - 如何将所有逻辑保留在同一个JSP上,但重新加载
数据serversList = '$ {serversList}'
没有刷新页面? 或者还有其他方法可以解决这个问题吗?
您正在寻找asynchronous JavaScript and XML
AKA Ajax 。 可以使用纯JavaScript或任何第三方JavaScript库(如JQuery)实现。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.