📌  相关文章
📜  从多选中获取所有选定的文本并加入它们. - Javascript(1)

📅  最后修改于: 2023-12-03 15:06:34.699000             🧑  作者: Mango

从多选中获取所有选定的文本并加入它们 - Javascript

在Web开发中,我们经常需要从页面中的多个选择框中获取用户选定的所有文本并加入它们。Javascript中有多种方法可以实现这个目的,我们将介绍一些常用的方法。

方法1:使用原生Javascript

我们可以使用原生的Javascript来获得多选择框的所有选项,并将它们的值合并为一个字符串。下面是示例代码:

const selectBoxes = document.querySelectorAll('select[type="checkbox"]');

let selectedValues = [];

selectBoxes.forEach(selectBox => {
    if (selectBox.checked) {
        selectedValues.push(selectBox.value);
    }
});

const combinedValues = selectedValues.join(', ');

console.log(combinedValues);

这个代码片段会选择文档中所有标记为选择框的多项框,然后遍历每个选择框以检查其是否被选中。如果选择框被选中,它的值将被添加到一个数组中。最后,所有值将被合并为一个逗号分隔的字符串并输出到控制台。

方法2:使用jQuery

如果我们正在使用jQuery,我们可以使用它提供的便利方法来获取多个选择框的所有选项,并将它们的值合并为一个字符串。下面是示例代码:

const selectedValues = $('select[type="checkbox"]:checked')
    .map(function() { return this.value; })
    .get()
    .join(', ');

console.log(selectedValues);

这个代码片段会选择文档中所有标记为选择框的多项框,并仅选择被选中的选项。然后,我们将选定选项的值映射到一个新的数组中,并将其合并为一个逗号分隔的字符串。最后,我们将结果输出到控制台。

方法3:使用Lodash

如果我们在项目中使用Lodash库,我们可以使用它提供的便利方法来获取多个选择框的所有选项,并将它们的值合并为一个字符串。下面是示例代码:

const selectedValues = _.chain(document.querySelectorAll('select[type="checkbox"]'))
    .filter(selectBox => selectBox.checked)
    .map(selectBox => selectBox.value)
    .join(', ')
    .value();

console.log(selectedValues);

这个代码片段与原生Javascript示例非常相似。我们首先选择文档中所有标记为选择框的多项框。然后,我们过滤掉未选中的框,并将结果映射到一个新的数组中。最后,我们将选定选项的值合并为一个逗号分隔的字符串,并输出到控制台。

结论

在Web开发中,从多个选择框中获取所有选定的文本是一项常见任务。使用上面这些技术之一,可以轻松获得多项框中所有选中的选项,并将它们的值合并为一个字符串。