ant-design-ui的Select选择器多选时同时获取label与vaule值

直接上代码

javascript 复制代码
<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>My React App</title>
    <!-- 引入 React 和 ReactDOM -->
    <script src="https://cdn.jsdelivr.net/npm/react@17/umd/react.production.min.js" crossorigin></script>
    <script src="https://cdn.jsdelivr.net/npm/react-dom@17/umd/react-dom.production.min.js" crossorigin></script>
    <!-- 引入 Babel 用于编译 JSX -->
    <script src="https://cdn.jsdelivr.net/npm/babel-standalone@6.26.0/babel.min.js"></script>
    <!-- 引入 Ant Design 的 CSS 文件 -->
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/antd@4.24.10/dist/antd.min.css">
    <!-- 引入 Ant Design 的 JS 文件 -->
    <script src="https://cdn.jsdelivr.net/npm/antd@4.24.10/dist/antd.min.js"></script>
</head>

<body>
    <div id="root"></div>
    <script type="text/babel">
        const onChange = (value) => {
            // 打印整个对象数组
            console.log('selected items:', value);
            // 如果需要,可以提取 value 和 label
            const selectedValues = value.map(item => item.value);
            const selectedLabels = value.map(item => item.label);
            console.log('selected values:', selectedValues.join(', '));
            console.log('selected labels:', selectedLabels.join(', '));
            value.forEach(item => {
                console.log(`Label:${item.label},value:${item.value}`);
            });
        };
        const onSearch = (value) => {
            console.log('search:', value);
        };
        // 定义一个简单的 React 组件
        class App extends React.Component {
            render() {
                return (
                    <div>
                        <h1>Hello, React!</h1>
                        <p>Welcome to your React application.</p>
                        <antd.Button type="primary">Primary Button</antd.Button>
                        <antd.Select
                            showSearch
                            placeholder="Select a person"
                            mode="multiple"
                            style={{
                                width: '20%',
                            }}
                            labelInValue={true}
                            optionFilterProp="label"
                            onChange={onChange}
                            onSearch={onSearch}
                            options={[
                                {
                                    value: 'j',
                                    label: 'Jack',
                                },
                                {
                                    value: 'l',
                                    label: 'Lucy',
                                },
                                {
                                    value: 't',
                                    label: 'Tom',
                                },
                            ]}
                        />
                    </div>
                );
            }
        }

        // 将组件渲染到 DOM 中
        ReactDOM.render(<App />, document.getElementById('root'));

    </script>
</body>


</html>

主要是将组件属性labelInValue={true}即可

相关推荐
Devlab41 分钟前
LVGL设计大师——网页版anyui来了!!
嵌入式硬件·物联网·低代码·ui·iot
向星而行_star13 小时前
Ito 模型在业务场景中的落地应用指南
ui
界面开发小八哥14 小时前
界面控件DevExpress XAF v26.1新版亮点——Blazor UI功能增强(二)
ui·界面控件·blazor·devexpress·ui开发
Oll Correct15 小时前
Adobe illustrator 案例四:吃豆人 (Pac-Man)图标绘制
笔记·ui·adobe·illustrator
阿图灵1 天前
Agentic AI 架构入门(九):Agent 通信协议全景——ACP/A2A/AG-UI/MCP
人工智能·ui·架构·ai agent·智能体·mcp·agentic ai
AI分享猿1 天前
UI设计Prompt系列(十二):设计系统入门——把视觉语言沉淀为可复用规范
ui·prompt
l1m0_1 天前
告别反复修改Prompt:AI生成React应用并落地开发的实战复盘
前端·react.js·ui·ai·设计
大千UI工场2 天前
时序数据库对数字孪生的作用
数据库·ui·时序数据库·前端开发·b端管理系统
UnicornIT2 天前
【HarmonyOS】时间管理类APP:做成“自适应“
ui·华为·harmonyos·鸿蒙
AI分享猿2 天前
UI设计Prompt系列(六):原型验证提速——用设计Prompt跳过反复改稿
ui·prompt