首页 > 解决方案 > jQuery / JS中单个参数中的多个参数不起作用

问题描述

我有以下代码:

      function periodClassMaker(period) {
        $('.rsform-block-rsa-formaat-w' + period).parent().addClass('periodselected');
      }
      periodClassMaker(['1','2']);

我也试过:

      periodClassMaker('1','2');

但在这两种情况下,它都无法将类添加periodselected.rsform-block-rsa-formaat-w1.rsform-block-rsa-formaat-w2

而且我不明白为什么它会失败。

之前有人问过这个问题,但我问的问题与我自己的代码完全无关。因为我不知道这是否可能。每个评论我的人都告诉我输入自己的代码,以便更好地评论/回复特定用例。

在问这个上一个问题之前,我做了一些试验和错误,但没有收到错误消息,也不是我想要的结果。在此之后,我去了 SO 并搜索“一个参数的多个参数”和类似的搜索短语。出现了许多结果,在阅读了大约一打之后,我仍然没有清楚的认识是否可能以及如何去做。因此,我发布了我自己的问题。

我希望编辑后的问题是有用的、清晰的,并且它表明我在发布之前做了一些研究。

标签: javascriptjqueryfunctionparametersarguments

解决方案


function periodClassMaker(period) {
    $(period.map(it => `.rsform-block-rsa-formaat-w${it}`).join(', ')).parent().addClass('periodselected');
}

periodClassMaker(['1','2']);

您可以将各个数字映射到每个选择器字符串,然后用逗号将它们连接起来,用于逻辑 OR 选择器。


推荐阅读