React学习之旅----获取表单输入的值,双向绑定

react中实现双向绑定input输入框值

import React, { Component } from 'react';
class Event extends Component {
  constructor(props) {
    super(props)
    this.state = {
      title: '事件对象练习',
      username: ''
    }
  }
  run = (e) => {
    // alert(this.state.title)
    console.log(e)
    alert(e.target) // 获取执行当前事件的dom节点
    e.target.style.background = 'red'
    // 获取自定义属性
    console.log(e.target.getAttribute('aid'))
  }
  inputChange = (e) => {
    console.log(e.target.value)
    this.setState({
      username: e.target.value
    })
  }
  getInput = () => {
    alert(this.state.username)
  }
  render () {
    return (
      

{this.state.title}

{this.state.username}


表单事件

{/* 获取表单的值 1 监听表单的改变事件 2 在改变的时间里面获取表单输入的值 3 把表单输入的值赋给username this.setState({}) 4 点击按钮的时候获取state里面的username值 this.state.username */}
) } } export default Event

第二种方法,通过ref值获取

import React, { Component } from 'react';
class List extends Component {
  constructor(props) {
    super(props)
    this.state = {
      title: '事件对象练习',
      username: ''
    }
  }
  run = (e) => {
    // alert(this.state.title)
    console.log(e)
    alert(e.target) // 获取执行当前事件的dom节点
    e.target.style.background = 'red'
    // 获取自定义属性
    console.log(e.target.getAttribute('aid'))
  }
  inputChange = (e) => {
    let value = this.refs.username.value
    console.log(value)
    this.setState({
      username: value
    })
  }
  getInput = () => {
    console.log(this.state.username)
  }
  render () {
    return (
      

{this.state.title}

{this.state.username}


表单事件

{/* 获取表单的值 1 监听表单的改变事件 2 在改变的时间里面获取表单输入的值 3 把表单输入的值赋给username this.setState({}) 4 点击按钮的时候获取state里面的username值 this.state.username */}
) } } export default List

有时候想获取键盘输入

import React, { Component } from 'react';
class List extends Component {
  constructor(props) {
    super(props)
    this.state = {
      title: '事件对象练习',
      username: ''
    }
  }
  run = (e) => {
    // alert(this.state.title)
    console.log(e)
    alert(e.target) // 获取执行当前事件的dom节点
    e.target.style.background = 'red'
    // 获取自定义属性
    console.log(e.target.getAttribute('aid'))
  }
  inputChange = (e) => {
    let value = this.refs.username.value
    console.log(value)
    this.setState({
      username: value
    })
  }
  getInput = () => {
    console.log(this.state.username)
  }
  inputKeyUp = (e) => {
    console.log(e.keyCode)
    if (e.keyCode === 13) {
      alert(e.target.value)
    }
  }
  render () {
    return (
      

{this.state.title}

{this.state.username}


表单事件

{/* 获取表单的值 1 监听表单的改变事件 2 在改变的时间里面获取表单输入的值 3 把表单输入的值赋给username this.setState({}) 4 点击按钮的时候获取state里面的username值 this.state.username */}
) } } export default List

 

你可能感兴趣的:(学习笔记)