我有一个 JSP 页面,它显示数组中包含的项目(只是一个非常简单的列表)。
在后台,阵列可能会发生变化,即添加一个新项目或删除一个项目。
数组更改时如何自动刷新页面?
我有一个 JSP 页面,它显示数组中包含的项目(只是一个非常简单的列表)。
在后台,阵列可能会发生变化,即添加一个新项目或删除一个项目。
数组更改时如何自动刷新页面?
有两种最流行的方式来执行这种操作
选项1
.jsp
页面并调用它,例如,updateList.jsp
out.println(1)
$.get("updateList.jsp", function(data) {
if(data !== null && data.length > 0 && data === 1) {
// refresh this page
document.location = document.location.href;
}
});
选项 2
.jsp
页面并调用它,例如,data.jsp
$.get("updateList.jsp", function(data) {
if(data !== null && data.length > 0) {
$("#my-list").html(
$("#my-template").render(data);
);
}
});
在您的 HTML 中,您将拥有:
<ul id="my-list"></ul>
<script id="my-template" type="text/x-jsrender">
{{for items}}
<li>{{:name}}</li>
{{/for}}
</script>
假设您的 JSON 类似于:
item: [
{ name: "Name A" },
{ name: "Name B" },
{ name: "Name C" },
]
一旦 JSP 执行完毕,它生成的 HTML 代码就已经发送到浏览器,浏览器和 JSP 之间就没有任何联系了。如果要刷新页面的某些部分,则需要使用 AJAX 轮询服务器,或者使用 WebSockets 来保持页面与服务器之间的连接。