如何使用JS过滤器功能返回所选选项的值

问题描述

我想获得一个数组,其中包含所选选项的值。 我想使用Array.prototype.filter。

我可以使过滤器返回所选选项的数组,但不返回选项值的数组。有没有一种方法可以返回所选选项的值的数组。

我可以使用forEach或for循环获取值的数组,但不能使用过滤器函数。如果这不可能,我想知道原因。

选择值

<select
                multiple
                className="form-control"
                id="genre"
                onChange={handleGenreChnage}>
                <option>drama</option>
                <option>music</option>
                <option>adventure</option>
                <option>historical</option>
                <option>action</option>
</select>

使用过滤器的功能-返回选项而不是选项中的值。

const handleGenreChnage = (event) => {
    const { options } = event.target;
    
    const optionsArray = [...options];

    const values  = optionsArray.forEach((option) => {
    
        if (option.selected) {
            return option.value;
            
        }
    });
    
    setForm({ ...form,genre: values.toString() });
};

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...