如何在输入中捕获所选文本?

时间:2019-05-24 10:41:53

标签: reactjs

我有TextField(material-ui),我需要捕捉用户选择的文本。

例如,我有文字:我想买车。 用户选择:想要

如何在文本选择结束后立即捕获所选文本并生成列表组件?

3 个答案:

答案 0 :(得分:0)

创建一个onchange函数,并将事件参数传递给onchange函数。这个事件参数将保存输入元素对象,执行event.target.value时,您将获得选定的值。您可以将select替换为TextField。

     function get_data(event){
            alert(event.target.value);
            }
         <select id="data" onchange="get_data(event)">
                <option value="one">Option 1 Here</option> 
                <option value="two">Option 2 Here</option>
            </select>

答案 1 :(得分:0)

import React, { Component } from 'react'

export default class Select extends Component {
constructor(props){
    super(props);
    this.state={
        value:"",
    }
    this.handleChange=this.handleChange.bind(this);
}
handleChange(e){
    this.setState({
        [e.target.name]: e.target.value
    })

}
render() {
    console.log(this.state.value);
    return (
        <select id="data" value={this.state.value} name="value" onChange={this.handleChange}>
        <option value="one">Option 1 Here</option> 
        <option value="two">Option 2 Here</option>
    </select>
    )
}
}

handle当选择了选项时改变火!将state.value设置为选项值

答案 2 :(得分:0)

所以,基本上有2个选择

  1. onChange函数传递给您的输入,并从event.target.value获得其值
  2. 您可以使用refs获取DOM节点,在那里您还可以获取输入的值(https://reactjs.org/docs/refs-and-the-dom.html#adding-a-ref-to-a-dom-element