Guest User

Untitled

a guest
Nov 23rd, 2017
34
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.48 KB | None | 0 0
  1. import React, {Component} from 'react';
  2.  
  3.  
  4. class SignupForm extends Component{
  5. constructor(props){
  6. super(props);
  7.  
  8. this.state = {userName:'', password:'', country:'',subscribe:false};
  9.  
  10. this.handleChange = this.handleChange.bind(this);
  11. this.handleSubmit = this.handleSubmit.bind(this);
  12. }
  13.  
  14. handleChange(event){
  15. console.log(`${event.target.name} : ${event.target.value}`);
  16. //this.setState({name: event.target.value.toUpperCase()})
  17. this.setState({[event.target.name]: event.target.value});
  18. if(event.target.name=="subscribe")
  19. this.setState({[event.target.name]: event.target.checked});
  20. }
  21.  
  22. handleSubmit(event){
  23. alert("User Name : "+this.state.userName+"\nPassword : "+this.state.password+ "\nCountry : "+this.state.country+"\nSubscribe : "+this.state.subscribe);
  24. event.preventDefault();
  25. }
  26.  
  27. render(){
  28. return(
  29. <form onSubmit ={this.handleSubmit}>
  30. <label>Username :
  31. <input
  32. type="text"
  33. value={this.state.userName}
  34. name="userName"
  35. onChange={this.handleChange}/>
  36. </label>
  37. <br/><br/>
  38. <div>
  39. <label>Password :
  40. <input
  41. type="password"
  42. value={this.state.password}
  43. name="password"
  44. onChange={this.handleChange}/>
  45. </label>
  46. </div>
  47.  
  48. <br/><br/>
  49. <div>
  50. <label>Select Country
  51. <select name = "country" value={this.state.country}
  52. onChange={this.handleChange}>
  53. <option value="India">India</option>
  54. <option value="Australia">Australia</option>
  55. <option value="United States">United States</option>
  56. <option value="Canada">Canada</option>
  57. </select>
  58. </label>
  59. </div>
  60.  
  61. <br/><br/>
  62. <div>
  63. <label>
  64. <input
  65. type="checkbox"
  66. name="subscribe"
  67.  
  68. onChange={this.handleChange}/>Subscribe to NewsLetter
  69. </label>
  70. </div>
  71. <br/><br/>
  72. <input type='submit' value="Sign up"/>
  73. </form>
  74. )
  75. }
  76. }
  77.  
  78. export default SignupForm;
Add Comment
Please, Sign In to add comment