简单的react下拉框多选效果

摘要:
importReact来自“react”;ClassTest4扩展反应。组件{constructor(props){super(prop);this.state={value:“椰子”,arr:[],options:〔{value:“graphfruit”,label:“葡萄柚”},{value:“live”,标签:“莱姆”};{value:“c”
import React from "react";

class Test4 extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      value: "coconut",
      arr: [],
      options: [
        { value: "grapefruit", label: "葡萄柚" },
        { value: "lime", label: "酸橙" },
        { value: "coconut", label: "椰子" },
        { value: "mango", label: "芒果" }
      ]
    };

    this.handleChange = this.handleChange.bind(this);
    // this.handleSubmit = this.handleSubmit.bind(this);
  }

  handleChange(e){
    let idx = this.state.arr.findIndex(item=>{
      return item===e.target.value
    })
    if(idx>=0){
      this.state.arr.splice(idx,1);
    }else{
      this.state.arr.push(e.target.value);
    }
    let arr=this.state.arr;
    this.setState({arr});
  }

  render() {
    return (
      <div>
        <select multiple={true} value={this.state.arr} onClick={this.handleChange}>
          {this.state.options.map((item,index) => {
            return <option value={item.value} key={index}>{item.label}</option>;
          })}
        </select>
      </div>
    );
  }
}

export default Test4;

免责声明:文章转载自《简单的react下拉框多选效果》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇《基于多层复杂网络的传播行为建模与分析》Django文件配置及orm下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

npm install -g create-react-app MacOS 报错解决

macOS 安装create-react-app报错解决: sudo npm uninstall -g create-react-app //删除之前对镜像 npm config set registry https://registry.npm.taobao.org // 安装还是不成功直接切换成淘宝镜像安装 npm config get regist...

React 表格行点击事件

<Table dataSource={this.dataSources} columns={this.columns} onRow={(record) => {//表格行点击事件 return { // onClic...

小窥React360——用React创建360全景VR体验

前言    混迹VR届的发烧友兼开发者们一定不要错过这款FaceBook推出的跨端VR开发框架——React360,称为360全景体验框架更为准确,因为其前身是FaceBook和Oculus2017年发布的一个叫作“Racet VR”的JS库,用来在web端创建3D和VR体验。后来Oculus使用该框架的原生C++版本构建自己部分应用,随着时间推移,由于要...

jq 下拉框获取选中自定义属性值

//下拉框发送改变后 获取选择的信息 <div class="form-group"> <label class="col-sm-3 control-label">地址:</label> <div class="col-sm-6"> <select name="addre...

React环境配置(第一个React项目)

使用Webpack构建React项目 1. 使用NPM配置React环境 NPM及React安装自行百度 首先创建一个文件夹,the_first_React 进入到创建好的目录,npm init,然后一路回车 新建src目录,在src中新建js文件夹,并在js中新建index.js文件 npm install --save react react-dom...

从零开始配置TypeScript + React + React-Router + Redux + Webpack开发环境

转载请注明出处! 说在前面的话: 1、为什么不使用现成的脚手架?脚手架配置的东西太多太重了,一股脑全塞给你,我只想先用一些我能懂的库和插件,然后慢慢的添加其他的。而且自己从零开始配置也能学到更多的东西不是么。 2、教程只配置了开发环境,并没有配置生产环境。 3、教程针对人群是有过React + Redux经验,并且想在新项目中使用TypeScript的人(...