【问题标题】:Replace selector with array item用数组项替换选择器
【发布时间】:2022-01-15 07:18:48
【问题描述】:

我想归档我有一个包含 3-4 个项的数组,然后我想迭代抛出所有这些项并用数组的项更改函数中的选择器。

let items = ['Name','Person,'New']

然后是我的功能

$('.btn').on("click", function(){do smth});

然后 foreach .btn 应该像名字或人,我可能想在数组中添加更多的项目。我该怎么做?

3 个功能

$('.name .btn').on("click", function()){do smth.})

$('.name .test').on("click", function()){do smth.})

$('.name .dosmth').on("click", function()){do smth.})

名称应替换为数组项

我想要元素的独特功能

【问题讨论】:

  • 所以你想在数组中有 $('.Name')..., $('.Person')... foreach 元素?
  • 是的,这就是我想要的

标签: javascript jquery foreach


【解决方案1】:

试试这个:

let items = ['name', 'person', 'new']
let elements = [{
    name: 'btn',
    callback: () => {
      // do something
    }
  },
  {
    name: 'test',
    callback: () => {
      // do something
    }
  },
  {
    name: 'dosmth',
    callback: () => {
      // do something
    }
  }
]
items.forEach(item =>
  elements.forEach(element => $(`.${item} .${element.name}`).on("click", element.callback()))
)

【讨论】:

  • 但我有多个函数,实际上是 3。我该怎么写呢?
  • 那么你想为每个项目在onclick上调用三个函数吗?
  • 如果功能都一样,你只需要一个
  • 我更新了我的问题
  • @TryHard11332 更新了答案。你想为所有三个调用相同的还是不同的?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-09-17
  • 1970-01-01
  • 2016-10-24
  • 2019-02-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多