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}即可

相关推荐
JaneConan20 小时前
鸿蒙 ArkUI 深水区:@Watch 和 @Observed,状态变了「自动跑」+ 嵌套对象「深层重绘」
开发语言·后端·ui·harmonyos
施棠海1 天前
Pixel2XML实战:10分钟从设计稿做出一个能拨号的Android拨号盘页面(附完整业务代码)
android·java·ui
施棠海1 天前
设计稿一键变成可运行的Android页面:Pixel2XML全流程UI开发框架实战(附完整源码)
android·ui·架构
Helen_cai1 天前
OpenHarmony 通用状态加载、空页面、错误兜底组件封装(全局业务通用 UI 组件 API23)
开发语言·ui·华为·php·harmonyos
非科班Java出身GISer1 天前
ArcGIS JS 基础教程(19):3D Tiles 图层
arcgis·arcgis js 倾斜·arcgis js倾斜摄影·arcgis 3dtiles·arcgis js 加载倾斜
YM52e1 天前
鸿蒙 Flutter BoxDecoration装饰:打造精美UI效果
学习·flutter·ui·华为·harmonyos·鸿蒙
qq_463408421 天前
# 基于 HarmonyOS ArkTS 声明式 UI 构建智能音乐播放器:深色主题圆盘轮播、五 Tab 导航隔离、瀑布流收藏与悬浮迷你播放条实现深度解析
ui·华为·harmonyos
工业HMI实战笔记2 天前
【无标题】
大数据·人工智能·ui·自动化·人机交互·交互
帅次2 天前
Kotlin Flow 与 StateFlow:UI 单向数据流基础
开发语言·ui·kotlin·stateflow·onlifecycle