好吧,我知道出了点问题,但我不明白是什么。
我从我编写的 Web 服务中读取了 Service 的 ArrayList(采用 JSON 媒体类型)。
访问该地址会返回 json 字符串。
现在我正在尝试制作一个网页来显示该值并查看每 3 秒请求一次对页面进行的更改。
我该如何解析它或使用它?读了很多很多,但我还是刚开始..
[是否无法将此对象传递给 JSP 并使用 JSTL 进行解析、循环和所有操作?那将是真棒!]
这里是js代码:
<script type="text/javascript">
setInterval(function(){
$.ajax({ url: "/MyApp/rest/display", success: function(data){
var objs = $.parseJSON(data);
$.each(objs, function(i,service) {
$("#service").append('<p>'+service+'</p>');
});
}, dataType: "json"});
}, 3000);
</script>
I've a <div id="service">
EDIT:差不多了!
现在我有这个:
<script type="text/javascript">
setInterval(function(){
$.ajax({ url: "/myApp/rest/display", success: function(data){
$.each(data, function(i,service) {
var cont = 1;
var newdiv = document.createElement('div');
newdiv.setAttribute('id', "service"+i);
$("#service"+i).html('<p>'+service.serviceId+" "+service.queue.lastNumber+'</p>');
document.getElementById("services").appendChild(newdiv);
cont++;
});
}, dataType: "json"});
}, 5000);
</script>
它获得了更新和所有(很好!),但我有一个问题:它不断创建新的 div在较大的一个(空 div)内。我怎样才能避免这种情况?
EDIT2:
没关系,我已经做到了!
只需在appendChild之前添加这一行:
if(!$("#service"+i).length)
奇迹般有效。谢谢!