【问题标题】:How to get text of selected <Dropdown/> option in ReactJS?如何在 ReactJS 中获取所选 <Dropdown/> 选项的文本?
【发布时间】:2019-08-16 18:36:46
【问题描述】:

我正在开发一个 ReactJS 应用程序,我正在尝试在下拉列表(语义 UI 组件)中获取所选选项的 文本

exposedCampaignOnChange = (e, {value}) => {
    this.props.campaignExposedSelected(value);
};

<Dropdown
    placeholder='Campaign Exposed To'
    fluid
    search
    selection
    multiple
    options={this.state.campaigns}
    onChange={this.exposedCampaignOnChange}
/>

以上代码返回this.state.campaigns 由具有valuetext 属性的对象数组组成。除了value,我还想获取选中选项的text值。

感谢有关此事的任何指导。

【问题讨论】:

    标签: reactjs semantic-ui semantic-ui-react


    【解决方案1】:

    您可以使用合成事件的目标属性来获取如下文本:

    exposedCampaignOnChange = (e, {value}) => {
      e.persist();
      console.log(e.target.textContent);
      this.props.campaignExposedSelected(value);
    };
    
    <Dropdown
      placeholder='Campaign Exposed To'
      fluid
      search
      selection
      multiple
      options={this.state.campaigns}
      onChange={this.exposedCampaignOnChange}
    />
    

    【讨论】:

    【解决方案2】:

    语义 ui react Dropdown onChange 事件有两个参数 - onChange(event: SyntheticEvent, data: object)。您不需要在调用函数时显式传递它们。

    exposedCampaignOnChange = (e, value) => {
      e.persist();
      this.props.campaignExposedSelected(value);
    };
    

    【讨论】:

      【解决方案3】:

      data/value 应该像语义 UI 中那样选择选项文本

      function getSelectedTextValue() {
        alert( $('.ui.dropdown').dropdown('get text') + " : " + $('.ui.dropdown').dropdown('get value') );
      }
      

      【讨论】:

        猜你喜欢
        • 2016-12-25
        • 2011-08-06
        • 2016-06-15
        • 1970-01-01
        • 1970-01-01
        • 2017-07-28
        • 2021-08-26
        • 1970-01-01
        • 2021-12-09
        相关资源
        最近更新 更多