import React, { useEffect, useState } from 'react'; import { useHistory } from 'react-router-dom'; import axios from 'axios'; import { LoadingButton } from '@material-ui/lab'; import Alert from '../../component/alert'; const ParentEdit = () => { const history = useHistory(); const [company, setCompany] = useState(''); const [email, setEmail] = useState(''); const [tel, setTel] = useState(''); const [text, setText] = useState(''); const [_422errors, set422Errors] = useState({ company:'', email:'', tel:'', text:'', }) const [_400error, set400Error] = useState('') const [submitStatus, setSubmitStatus] = useState('') const validateForm = () => { let errors = {}; let formIsValid = true; if (email.length == 0) { formIsValid = false; errors["email"] = 'Required'; } else { //regular expression for email validation var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i); if (!pattern.test(email)) { formIsValid = false; errors["email"] = 'Required'; } else { errors['email'] = ''; } } if(!company){ formIsValid = false; errors['company'] = 'Required'; } else errors['company'] = ''; if(!tel){ formIsValid = false; errors['tel'] = 'Required'; } else errors['tel'] = ''; if(!text){ formIsValid = false; errors['text'] = 'Required'; } else errors['text'] = ''; set422Errors(errors); return formIsValid; } const handleSubmit = (e) => { e.preventDefault(); if(!validateForm()) return; const formdata = new FormData(); formdata.append('company', company); formdata.append('email', email); formdata.append('tel', tel); formdata.append('text', text); // axios.post('/', formdata) // .then(response => { // if(response.data.status_code==200){ // setSubmitStatus('success); // } // else if(response.data.status_code==400){ // setSubmitStatus('failed); // } // }) // .catch(err=>console.log(err)) } return (