最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

如何获取复选框索引行号?

IT培训 admin 5浏览 0评论

如何获取复选框索引/行号?

我有一个表复选框是,选中时,我想追加值,以从所述数据填充表的阵列(在tableData.element.link低于我的代码)。

我已经被点击复选框时被称为toggleRow方法,但我怎么能追加匹配tableData.element.link到一个数组被点击复选框时?即如何获取该被点击,这样我可以抓住从我的资料表阵列权值的复选框的行索引?

  componentDidMount() {
    const _self = this;

    fetch(config.api.urlFor('xxx'))
    .then((response) => response.json())
    .then((data) => {

      const tableContent = [];

      data.array.forEach(element => {
        tableContent.push({
          date: element.date,
          title: element.title,
          link: <Link to='' onClick={(e)=> {e.preventDefault(); this.getPreauthorizedLink(element.link)}}>Report</Link>
        });

      })

      this.tableData = tableContent;

      this.setState({reportJSON: tableContent || [], tableIsBusy: false})

    })
    .catch((err) => _self.setState({tableIsBusy: false }));
  }

  toggleRow(name, id) {
    const newSelected = Object.assign({}, this.state.selected);

    let awsFileKeys = [];

    if(newSelected[name]){
      delete newSelected[name]
    }else {
          newSelected[name] = !this.state.selected[name];
    }
    this.setState({
            selected: newSelected,
            selectAll: 2
        });


        awsFileKeys.push(this.tableData.element.link[id]);
        console.log(awsFileKeys);
    }
回答如下:

我完成了这个方式实际上是由看复选框的值,分配AWS文件密钥每个复选框后。然后,我把所有的AWS文件密钥从我所选项目的阵列,并把它们放到一个新的数组:

  toggleSelectAll() {
    let newSelected = {};
    let newFileKeys = [];

    if (this.state.selectAll === 0) {
        this.state.reportJSON.forEach(x => {
            newSelected[x.linkRaw] = true;
        });
    }

    this.setState({
        selected: newSelected,
        selectAll: this.state.selectAll === 0 ? 1 : 0
    })

    for(let item in Object.keys(this.state.selected)){
      newFileKeys.push(this.state.selected[item]);
    }

    this.state.awsFileKeys = newFileKeys;

    }

如何获取复选框索引/行号?

我有一个表复选框是,选中时,我想追加值,以从所述数据填充表的阵列(在tableData.element.link低于我的代码)。

我已经被点击复选框时被称为toggleRow方法,但我怎么能追加匹配tableData.element.link到一个数组被点击复选框时?即如何获取该被点击,这样我可以抓住从我的资料表阵列权值的复选框的行索引?

  componentDidMount() {
    const _self = this;

    fetch(config.api.urlFor('xxx'))
    .then((response) => response.json())
    .then((data) => {

      const tableContent = [];

      data.array.forEach(element => {
        tableContent.push({
          date: element.date,
          title: element.title,
          link: <Link to='' onClick={(e)=> {e.preventDefault(); this.getPreauthorizedLink(element.link)}}>Report</Link>
        });

      })

      this.tableData = tableContent;

      this.setState({reportJSON: tableContent || [], tableIsBusy: false})

    })
    .catch((err) => _self.setState({tableIsBusy: false }));
  }

  toggleRow(name, id) {
    const newSelected = Object.assign({}, this.state.selected);

    let awsFileKeys = [];

    if(newSelected[name]){
      delete newSelected[name]
    }else {
          newSelected[name] = !this.state.selected[name];
    }
    this.setState({
            selected: newSelected,
            selectAll: 2
        });


        awsFileKeys.push(this.tableData.element.link[id]);
        console.log(awsFileKeys);
    }
回答如下:

我完成了这个方式实际上是由看复选框的值,分配AWS文件密钥每个复选框后。然后,我把所有的AWS文件密钥从我所选项目的阵列,并把它们放到一个新的数组:

  toggleSelectAll() {
    let newSelected = {};
    let newFileKeys = [];

    if (this.state.selectAll === 0) {
        this.state.reportJSON.forEach(x => {
            newSelected[x.linkRaw] = true;
        });
    }

    this.setState({
        selected: newSelected,
        selectAll: this.state.selectAll === 0 ? 1 : 0
    })

    for(let item in Object.keys(this.state.selected)){
      newFileKeys.push(this.state.selected[item]);
    }

    this.state.awsFileKeys = newFileKeys;

    }

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论