如何循环ajax请求(使用jquery)和jsp
How do i loop an ajax request (using jquery) and jsp
<script>
//when page is ready do the following
$(document).ready(function()
{
//set interval of refresh
setInterval(doAjaxMethod, 1000);
});
function doAjaxMethod(id)
{
$.ajax({
url: "getStatus/"+id,
dataType: "json",
success: function(json)
{
$('#ajaxStatus').html(json.status);
}
});
</script>
<%
//How can I do something like this
int n = object.size();
for(int i=0; i<n; i++)
{
doAjaxMethod(object.getId());
}
%>
<div id=ajaxStatus> status updates here </div>
我不会在scrippets中混合调用javascript。相反,用javascript管理循环。如果你描述更多你想做的事情,我可以更具体一些。jsp上似乎有一个可用的容器对象,您需要循环通过以获取容器中内容的状态。与其将该对象传递给jsp,不如创建一个端点,让jsp上的javascript可以在ajax中调用该端点来获取所需的所有数据。
可以做的一种方法是用css类将它们添加到类似列表的对象中,并在其上触发ajax方法onLoad
。这是一些未经测试(可能是未编译)的
<%
//How can I do something like this
int n = object.size();
for(int i=0; i<n; i++)
{
out.println("<li class='abcd' id ='<%=object.getId()%>'>" +object.getId() +"</li>");
}
%>
然后在javascript页面加载
$(function(){
$('.abc').each(i, v){
doAjaxMethod($(v).attr('id'));
}
});
试试这个(假设objArray
是一个数组):
$.each(objArray, function(i, obj) {
doAjaxMethod(obj.getId());
});
它将迭代您的数组,obj
是每个项。希望能有所帮助。
相关文章:
- 如何使用jQuery自动打开页面上的所有链接
- 如何使用jquery在填充自动完成的值后使文本框只读
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 如何在Angular2中使用jQuery插件
- 如何使用jQuery选择下拉列表的值
- 使用JQuery解析JSON嵌套数组
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 如何使用jquery处理php循环通过元素
- 使用jquery将mysql数据获取到新的表行中
- 如何使用jquery Validation验证Formspread
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- 使用jQuery动态添加表并在其中动态添加行
- 使用jquery在单击时在单元格中输入值
- 如何使用jQuery在动画中期加速动画
- 如何使用jquery强制一个单词更改大小写等以保留品牌
- 在不使用jquery的情况下查找页面中的所有锚点并附加函数
- 使用JQuery的动态上下文菜单
- 使用jQuery以红色和黑色闪烁文本
- 如何使用jquery更改html中的背景颜色
- 使用jQuery从原始页面内容创建iframe