Jquery - 简单数组,如果项目不存在则将其推入,如果存在则删除项目

2024-01-30

我正在构建一个简单的过滤系统,我只想将一个字符串添加到数组中,并在单击链接时将其删除(如果它已经存在)。我会尽力解释。

$(document).ready(function(){
    //so I start with an empty array
    var filters [];
    //when a link is clicked I want to add it to the array..
    $('li a', context).click(function(e){
        //so I get the value held in the data-event attribute of the clicked item example: "john"
        newFilter = $(this).attr('data-event');
        //this is where I get stuck, I want to test to see if the string I now have
        //in 'newFilter' is in the array already or not.. if it is in the array I
        //want to remove it, but if it doesnt exist in the array i want to add it..
        if(jQuery.inArray(newFilter, filters){
            //add to array
        } else {
           //remove from array
        };
    e.preventDefault();
    });
});

$.inArray() http://api.jquery.com/jQuery.inArray/如果找到则返回该项目的索引,并且-1否则(就像指数() https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf确实如此,当支持时)。因此,你可以这样写:

var found = jQuery.inArray(newFilter, filters);
if (found >= 0) {
    // Element was found, remove it.
    filters.splice(found, 1);
} else {
    // Element was not found, add it.
    filters.push(newFilter);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jquery - 简单数组,如果项目不存在则将其推入,如果存在则删除项目 的相关文章

  • jQuery / Ajax:如何循环遍历数组作为 Ajax 成功函数的一部分

    我有一个阿贾克斯调用返回一个数组并需要对该数组中的每个值执行某些操作 到目前为止 我有以下内容 但这会返回以下错误 Uncaught TypeError Cannot use in operator to search for length
  • jQuery 悬停时滚动到 div 并返回到第一个元素

    我基本上有一个具有设定尺寸的 div 和overflow hidden 该 div 包含 7 个子 div 但一次只显示一个 我希望当它们各自的链接悬停时能够平滑地垂直滚动 但是 第一部分 div 没有链接 并且是没有悬停链接时的默认部分
  • 如何取消 AjaxForm 上的提交

    我正在使用 jQuery 插件 ajax 形式 我尝试实现这样的东西 MyFormID ajaxForm dataType json resetForm true beforeSubmit function validateData ret
  • 使用 Newtonsoft.Json.NET 搜索 JSON 根对象的正确 JsonPath 表达式是什么?

    大多数例子涉及Stefan G ssner 的书店示例 http goessner net articles JsonPath index html e3 但是我正在努力为简单对象 无数组 定义正确的 JsonPath 表达式 Id 1 N
  • 在一个项目中使用多个 Javascript 框架?

    在一个项目中使用多个框架是好是坏 还是不好 因为它会变得混乱 一团糟 并且加载时间可能会更长 100 K 真的很重要吗 或者你应该坚持使用一个 通常最好选择一件事并坚持下去 原因有很多 更少的依赖 降低复杂性 更容易维护 更快的加载时间 不
  • 输入类型=图像 - onclick(),将触发其事件,但在 jquery 中的函数上表现不佳

    我认为这可能是两篇文章 2个问题 所以如果你对此发表评论 我会将它们分开 主要问题实际上是 我怎样才能为按钮设置图像背景 简单且正确 我想现在我可以确定这些事实了 因为我在将图像设置为按钮背景时遇到了 小 问题 我想 好吧 如果很难设置的话
  • Jquery:将链接标记为已访问而不打开它们?

    我无意仅仅更改链接 我听说这是不可能的 但如果不是 我很想知道如何更改 如果需要的话 我可以将其添加到浏览器历史记录中 我想遍历所有 a 位于页面上并将其状态更改为已访问 例如 a each function mark as visited
  • RegisterForEventValidation 只能在 Render 期间调用

    我有一个将从 jquery ajax 调用的 webmethod WebMethod public string TestMethod string param1 string param2 StringBuilder b new Stri
  • 仅当表单已提交时才触发 jQuery 表单验证?

    不引人注目的验证基于这样的想法 don t进行表单验证 直到用户提交表单 一旦发生这种情况 如果表单上的某些内容无效 那么一旦用户更改了每个字段 就会立即验证它 我想做的是 不显眼地 触发表单元素的验证 也就是说 only如果用户已尝试提交
  • Turbo C 阵列问题

    我只是想问一些关于我的代码的事情 define LIM 40 main int day 0 float temp LIM clrscr do printf Enter temperature for day d day scanf f te
  • 在 Go 中,如何将结构体转换为字节数组?

    我有一个我定义的结构实例 我想将其转换为字节数组 我尝试了 byte my struct 但这不起作用 另外 我还被指出二进制包 http golang org pkg encoding binary 但我不确定我应该使用哪个函数以及应该如
  • 动态速度计 javascript 或 jquery 插件

    我希望有动态ajax插件在页面上显示速度计 一个想法是我设置一个背景并旋转针 有人知道相关插件吗 这里有一些供您参考 http bernii github com gauge js http bernii github com gauge
  • 如何使用 JavaScript 中的值填充下拉列表?

    我在 Tridion CMS 扩展中的功能区工具栏按钮中添加了一个按钮 单击该按钮后 将显示一个弹出页面 其中包含两个下拉菜单 通过更改第一个下拉控件中的值 我应该填充第二个下拉控件的值 就我而言 我正在使用ASP drop down li
  • 非 DOM 对象上的 jQuery 自定义事件

    我最近阅读了一些代码 其功能如下 bob name Bob Smith rank 7 bob bind nameChanged function bob trigger nameChanged 这似乎有效 但我在 jQuery 文档或源代码
  • jquery 验证错误位置

    这看起来很简单 但我无法弄清楚 我正在使用 jquery 验证插件 我验证所有文件 但我想要的是在输入文本行中显示验证消息警报 例如在电子邮件输入中 请填写电子邮件地址 但现在它出现在所有字段下 在我的html中
  • jQuery,REAL:不是等价的运算符?

    此代码行选择任何类名不是 id 和 quantity 的 div 内的所有子输入 div item gt div not id quantity gt input live keydown function event 执行相反操作的代码行
  • 按范围迭代数组

    我有一个数组 1 2 3 4 5 6 100 我希望将此数组迭代 5 次 具体来说 取数组的前 5 个数字并获取平均值 继续处理接下来的 5 个数字并获取平均值 依此类推 我尝试过多种方法 例如Dequeue和 for 循环但未能获得所需的
  • Jquery 中的动态滚动位置

    请帮助我解决以下情况 我有 3 个页面 当滚动到达第二页时 用户滚动页面 它必须找到特定的 ID 然后触发一个函数 一旦第三页开始 另一个函数就会触发 根据要求我不应该使用任何插件
  • JavaScript 中数组的 HTML 数据列表值

    我有一个简单的程序 它必须从服务器上的文本文件中获取值 然后将数据列表填充为输入文本字段中的选择 为此 我想要采取的第一步是我想知道如何动态地将 JavaScript 数组用作数据列表选项 我的代码是
  • 数据表日期范围过滤器

    如何添加日期范围过滤器 like From To 我开始进行常规搜索和分页等工作 但我不知道如何制作日期范围过滤器 我正在使用数据表 1 10 11 版本 My code var oTable function callFilesTable

随机推荐

  • constexpr 表达式和变量生存期,g++ 和 clang 不一致的示例

    考虑简单的 C 11 代码 template
  • 多个 Hadoop 文件系统实例

    我有一堂课 为了便于阅读 我删除了 try catch public class HadoopFileSystem private FileSystem m fileSystem null public HadoopFileSystem C
  • 从移动设备测量 Web 应用程序的性能

    想要从我的 Android 和 iOS 设备测量移动设备 Web 应用程序 在 Microsoft PowerApps 中设计 的性能 基本上 我对 UI 性能 KPI 和页面之间的响应时间更感兴趣 想要从设备而不是模拟器执行此操作 是否有
  • SQL 其中日期时间列等于今天的日期?

    如何从创建日期是今天日期的数据库中获取记录 SELECT Title Firstname Surname Company name Interest FROM dbo EXTRANET users WHERE DATE Submission
  • 引用 dll 时忽略内部版本号

    我有一个 NET 4 0 项目 C 的解决方案 它生成一个延迟签名的 dll 我对其进行点模糊处理和签名 EDIT 这就是我对 dll 进行版本控制的方式 assembly AssemblyVersion 0 7 0 assembly As
  • Flutter:检测到滚动时隐藏和显示应用栏

    我在使用应用栏动画时遇到问题SilverAppBar 在我的应用程序中 因此 问题是当我位于列表中间并向上滚动时 应用程序栏不会出现 但当滚动到达项目列表顶部时它就会出现 我已经测试过snap参数并给出true 但不是我期望的结果 我有关于
  • ipdb 显示颜色代码而不是颜色

    Use import ipdb ipdb set trace 插入断点 第一次断点时颜色很好 但第二次断点时显示颜色代码而不是真实颜色 按c 等等 1 32m 72 1 33m 1 32mimport 0m 0mipdb 0m 1 33m
  • cellmap中找不到Frame的解决方法

    下列 在单元格图中找不到框架 https github com dompdf dompdf issues 657 https github com dompdf dompdf issues 657 是互联网上众所周知的问题 但我找不到解决办
  • 打印出Python脚本中的所有代码

    如何打印Python脚本的内容 例如 如果我有这个 毫无意义的示例 脚本 my var 1 1 another thing this is my string 我可以添加哪一行来恢复全部内容 my var 1 1 another thing
  • 如何使用excel-vba创建word文档删除部分

    您好 提前谢谢您 我正在使用 VBA 从 Excelfile 创建一个非常复杂的 Word 文档 应可以激活某些内容 并且单元格中写入的文本应传输到 Word 文档 我已经做好了 但如果它没有被激活 标签 将被删除 不留下任何东西 这意味着
  • ReactiveCrudRepository 永远不会从 SaveAll 返回

    启动时 我检查一些数据 如果不存在 则尝试保存一些默认值 暂时用于测试 val subs repo findAll toIterable if subs none repo saveAll defaults map Source it li
  • WatchKit 拉动刷新

    是否可以实现类似于 Watch 电子邮件应用程序的拉动刷新 如果不是 我还应该如何处理更新WKInterfaceTable 我真的不希望应用程序在加载时自动刷新 因为这违背了快速观看应用程序的目的 不幸的是 目前这是不可能的 WKInter
  • 使用 pandoc 将 html 转换为 docx

    我试图转换这个html p font color SHILPI font p 使用 pandoc 和此命令到 docx pandoc s o test docx t html5 t docx html file 但它失去了颜色 我只得到文本
  • 运行 rspec 时如何让 Rails.logger 打印到控制台/stdout?

    同标题 如何获得Rails logger运行 rspec 时打印到控制台 标准输出 例如 Rails logger info I WANT this to go to console stdout when rspec is running
  • best_in_place gem 初始化

    导轨 3 2 11 Gemfile gem jquery rails gem best in place 应用程序 js require jquery require jquery ujs require best in place 后js
  • 如何通过 Groovy 获取文件 build.gradle 的完整路径?

    我需要在我的 java 项目中靠近 buiid gradle 文件创建文件 我必须在 build gradle 文件中创建任务 Groovy 任务 我的任务必须在项目中的 buiid gradle 附近创建文件 但我不知道 如何获取 bui
  • 如何重新加载一个 UITableView 单元格/行并为其设置动画?

    如何重新加载一个单元格 行并为其设置动画 现在我下载一些文件 每次文件下载完成时 我都会调用它的完成委托并调用 tableview reload 但随后整个表都会重新加载 我怎样才能为表格设置动画 这样它就不会闪烁 例如淡入淡出效果等 问候
  • 发布后将模型插入到集合中

    我正在将一个模型插入带有帖子的矩形集合中 var collectionService restAngular all collection var collection collectionService getList var item
  • 在WPF中,MVVM应该让ViewModel参与打开窗口,例如关于窗口?

    我有一个标准的 WPF 树视图 并绑定了查看模型类的项目 我现在希望处理双击项目时的行为 打开视觉工作室风格的文档 我可以让事件处理程序在包含树视图的控件中触发 显示 xaml 但是如何绑定到视图模型类上的特定行为 例如项目视图模型 最好绑
  • Jquery - 简单数组,如果项目不存在则将其推入,如果存在则删除项目

    我正在构建一个简单的过滤系统 我只想将一个字符串添加到数组中 并在单击链接时将其删除 如果它已经存在 我会尽力解释 document ready function so I start with an empty array var fil