繁体   English   中英

同时触发多个Ajax请求

[英]Trigger multiple Ajax requests at the same time

我在jQuery上具有通过onclick事件发送发布请求并更改表行中的值的功能。

我如何做到大众化? 例如,单击此按钮,我将具有“全部检查”按钮,即调用功能。 我想点击一次,召集所有check ,然后开始执行

伪代码:

<ul>
  <li id=1>text1</li>
  <li id=2>text2</li>
  <li id=3>text3</li>
</ul>

<button id="checkall">check all</button>
<script>

function check(id) { /* ... */ }'

on('click', '#checkall', {
  $("ul li").each(function() { 
    check(this.attr('id'));
  });
});

</script>

是的,我知道那是它的愚蠢想法,但是,我该怎么做呢? ^ _ ^

谢谢。

您应该这样做:

var check = function() { ... };

$('#checkall').on('click',function() {
  $("ul li").each(function() { 
    check(this);//to check it all use your function
    //other code
  });
});

我之所以使用this是因为我不知道正在调用哪个函数以及您要传递给哪个变量。

以下代码将触发li的click事件(您说您已经设置了)

on('click', '#checkall', {
  $("ul li").trigger('click');
});

您应该注意到可以同时运行的ajax受到限制,请查看以下内容。流行的浏览器中允许多少个并发AJAX(XmlHttpRequest)请求?

如果您需要在触发点击之前运行某些功能,则可以执行以下操作:

$("ul li").each(function() { 
    // Your code here
    $(this).trigger('click');
  });

总而言之,我认为您在这方面走错了路。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM