Advertisement
Guest User

Untitled

a guest
Apr 18th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.77 KB | None | 0 0
  1. import React, {Component} from 'react';
  2.  
  3. class Form extends Component{
  4.  
  5. constructor(props){
  6. super(props);
  7.  
  8. this.state = {
  9. username: '',
  10. comments: '',
  11. topic: '',
  12. }
  13.  
  14. this.handleUsernameChange = this.handleUsernameChange.bind(this);
  15. this.handleCommentsChange = this.handleCommentsChange.bind(this);
  16. this.handleTopikChange = this.handleTopikChange.bind(this);
  17. }
  18.  
  19. handleUsernameChange = (event) => {
  20. this.setState({
  21. username: event.target.value
  22. })
  23. }
  24.  
  25. handleCommentsChange = (event) => {
  26. this.setState({
  27. comments: event.target.value
  28. })
  29. }
  30.  
  31. handleTopikChange = (event) => {
  32. this.setState({
  33. topic: event.target.value
  34. },()=>{
  35. console.table(this.state)
  36. })
  37. }
  38.  
  39. submitEvent = (event) => {
  40. console.log(this.state)
  41. event.preventDefault()
  42. }
  43.  
  44. render(){
  45. return (
  46. <form onSubmit={this.submitEvent}>
  47. <div className="form-group">
  48. <label>Username</label>
  49. <input type="text" className="form-control" value={this.state.username} onChange={this.handleUsernameChange} />
  50. </div>
  51.  
  52. <div className="form-group">
  53. <label>Commnets</label>
  54. <textarea type="text" className="form-control" value={this.state.commetns} onChange={this.handleCommentsChange} />
  55. </div>
  56.  
  57.  
  58.  
  59. <div className="form-group">
  60. <label>Topic</label>
  61. <select type="text" className="form-control" value={this.state.topic} onChange={this.handleTopikChange}>
  62. <option value="react">react</option>
  63. <option value="angular">angular</option>
  64. <option value="vue">vue</option>
  65. </select>
  66. </div>
  67. <button type="submit" className="btn btn-success">Save</button>
  68. <button type="reset" className="btn btn-success">cancel</button>
  69. </form>
  70. )
  71. }
  72.  
  73. }
  74.  
  75. export default Form;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement