热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

每个LI的jQueryAJAX动作-jQueryAJAXactionforeachLI

Imcurrentlycreatinganupdatescript,wherebyIhavealistoftaskseachdetailedinaUL,examp

I'm currently creating an update script, whereby I have a list of tasks each detailed in a UL, example below:

我正在创建一个更新脚本,我在其中列出了每个在UL中详细说明的任务,例如:

  • Task one
  • Task two
  • Task three

I'm looking for a way for jQuery to systematically loop through each li and perform an AJAX request for each specific ID. More specifically, I'd like to do this automatically (without user interaction) performing each individual request in order... e.g when li#1 is finished, it'll start on the next.

我正在寻找一种让jQuery系统地遍历每个li并为每个特定ID执行AJAX请求的方法。更具体地说,我想自动执行此操作(无需用户交互)按顺序执行每个单独的请求...例如,当li#1完成时,它将从下一个开始。

I can loop through each li by using the following, but I can't see to get the AJAX to automatically perform its request

我可以通过使用以下方法遍历每个li,但我看不到让AJAX自动执行其请求

$('li').each(function(index) { task = $(this).attr('id'); /* perform the task */ });

Can anyone help?

有人可以帮忙吗?

3 个解决方案

#1


1  

You could write a function that loops until it runs out of

  • elements, going to the .next() on AJAX success, like this:

    您可以编写一个循环的函数,直到它用完

  • 元素,在AJAX成功时转到.next(),如下所示:

  • 元素,在AJAX成功时转到的.next(),如下所示:
  • function execTask(li) {
      if(!li.length) return; //no more left, abort out
      $.ajax({ 
        url: "something",
        data: { task: li.attr("id") },
        success: function() { execNextTask(li.next()); }
      });
    }
    

    Then on load or whenever you want to kick it off, just call it on the first

  • , like this:

    然后在加载时或者只要你想开始它,只需在第一个

  • 上调用它,就像这样:

  • 上调用它,就像这样:
  • execTask($('#tasks li:first'));
    

    #2


    0  

    $('li').each(function(index) {\
    
    $.post("test.php", { name: "John", time: "2pm" },
       function(data){
         alert("Data Loaded: " + data);
       });
    
      });
    

    i call jquery ajax function inside jquery function. I hope this should work.

    我在jquery函数中调用jquery ajax函数。我希望这应该有效。

    http://api.jquery.com/jQuery.post/

    http://api.jquery.com/jQuery.post/

    #3


    0  

    If you are wanting to perform an AJAX action on a number of elements in the page simultaneously, you are far better compiling them all together, doing a single AJAX interaction with the server, and then parsing the response. Otherwise, if you have a list with 100 items, you will be doing 100 round trips to the server - anything but efficient.

    如果您想同时对页面中的许多元素执行AJAX操作,您可以更好地将它们编译在一起,与服务器进行单个AJAX交互,然后解析响应。否则,如果你有一个包含100个项目的列表,你将进行100次往返服务器 - 除了有效之外。

    So, taking @zod's code as a base:

    所以,以@ zod的代码为基础:

    var idArray = array();
    
    $('li').each(function(){
      idArray.push( $(this).attr('id') );
    });
    
    $.post(
      "test.php" ,
      {
        ids: idArray.join(',') ,
        anything: "else"
      } ,
      function(data){
        alert("Data Loaded: " + data);
      });
    });
    

    Within your PHP (or other server-side language) script, you simply split the ids variable into the individual values, process them each, and then concatenate the completed response (maybe in using JSON) and then ensure that the function in the $.post() parses the data out as required.

    在PHP(或其他服务器端语言)脚本中,您只需将ids变量拆分为单个值,然后对每个值进行处理,然后连接已完成的响应(可能使用JSON),然后确保$中的函数。 post()根据需要解析数据。


    推荐阅读
    • GetWindowLong函数
      今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
    • Voicewo在线语音识别转换jQuery插件的特点和示例
      本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
    • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
    • 本文介绍了brain的意思、读音、翻译、用法、发音、词组、同反义词等内容,以及脑新东方在线英语词典的相关信息。还包括了brain的词汇搭配、形容词和名词的用法,以及与brain相关的短语和词组。此外,还介绍了与brain相关的医学术语和智囊团等相关内容。 ... [详细]
    • PHP图片截取方法及应用实例
      本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
    • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
    • Java序列化对象传给PHP的方法及原理解析
      本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
    • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
    • CSS3选择器的使用方法详解,提高Web开发效率和精准度
      本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
    • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
    • 如何使用Java获取服务器硬件信息和磁盘负载率
      本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
    • 本文介绍了[从头学数学]中第101节关于比例的相关问题的研究和修炼过程。主要内容包括[机器小伟]和[工程师阿伟]一起研究比例的相关问题,并给出了一个求比例的函数scale的实现。 ... [详细]
    • 本文讨论了使用差分约束系统求解House Man跳跃问题的思路与方法。给定一组不同高度,要求从最低点跳跃到最高点,每次跳跃的距离不超过D,并且不能改变给定的顺序。通过建立差分约束系统,将问题转化为图的建立和查询距离的问题。文章详细介绍了建立约束条件的方法,并使用SPFA算法判环并输出结果。同时还讨论了建边方向和跳跃顺序的关系。 ... [详细]
    • [译]技术公司十年经验的职场生涯回顾
      本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
    • Python正则表达式学习记录及常用方法
      本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
    author-avatar
    可菲儿2702934224
    这个家伙很懒,什么也没留下!
    PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有