在这种情况下如何处理复选框?

时间:2015-10-15 16:57:01

标签: javascript reactjs

我正在通过帖子请求向数据库发送一些数据,我的应用中有一个复选框,我需要使用state

来处理

我正在使用this library让我感到困惑。

这里我在渲染方法中有我的复选框

<Checkbox value="Active" ref="Active" defaultChecked={true} onCheck={this._isChecked} />

以及处理它的功能

  _isChecked = () => {
    console.log('Checked: ');
  }

我默认需要checked = true

现在,我在这里使用了我正在使用的功能,以便将数据发送到post请求

  _addDealer = () => {
    CreateDealersActions.createDealer({
      DealerName : this.refs.DealerName.getValue(),
      CardId     : this.refs.CardId.getValue(),
      NickName   : this.refs.NickName.getValue(),
      Picture    : 'http://lorempixel.com/150/150/',
      Active     : // HERE I NEED TO SET THE VALUE OF THE CHECKBOX
      LegalId    : this.refs.LegalId.getValue(),
      TypeId     : this.refs.TypeId.getValue(),
    });
  }

查看该函数中的Active : // HERE I NEED TO SET THE VALUE OF THE CHECKBOX部分,我需要在其中放置复选框的值。

那么,为了在密钥Active中发送正确的数据我应该知道什么,因为我正在使用此库,我是否需要放置state?或者还有其他方法吗?

1 个答案:

答案 0 :(得分:1)

我将回答这个问题,因为可能你们中的一些人不知道我正在使用的图书馆,这是一个痛苦的屁股,文件是可怕的。

您不需要设置初始状态,因为复选框组件已经附加了一个。因此,为了获得复选框的值,您不需要设置函数。有了这个,我做的就够了:

<Checkbox value="Active" ref="Active" defaultChecked={true} />

  _addDealer = () => {
    CreateDealersActions.createDealer({
      DealerName : this.refs.DealerName.getValue(),
      CardId     : this.refs.CardId.getValue(),
      NickName   : this.refs.NickName.getValue(),
      Picture    : 'http://lorempixel.com/150/150/',

      Active     : this.refs.Active.state.switched,

      LegalId    : this.refs.LegalId.getValue(),
      TypeId     : this.refs.TypeId.getValue(),
    });
  }

所以:this.refs.Active.state.switched足以获得复选框的正确值。