So I have the form functioning how I expect it. All the fields are getting updated, but when I click submit it doesn’t trigger the onSubmit function and instead I just get the default behaviour of a page refresh. Where am I going wrong here?
import React, { useState } from "react";
function FoodOrderForm() {
const [formInputs, setFormInputs] = useState({});
const handleChange = ({target}) {
setFormInputs((prev) => {...prev, target.id: target.value});
};
const handleSubmit = (event) => {
alert(`Order Successful!\n Your order was ${formInputs.order}.\n Please show your confirmation number for pickup.`);
event.preventDefault();
}
return (
<form onSubmit={handleSubmit}>
<label htmlFor="name">Name:
<input id="name" value={formInputs.name} onChange={handleChange} />
</label>
<br />
<label htmlFor="phone">Phone:
<input id="phone" value={formInputs.phone} onChange={handleChange} />
</label>
<br />
<label htmlFor="address">Address:
<input id="address" value={formInputs.address} onChange={handleChange} />
</label>
<br />
<label htmlFor="order">Order:
<input id="order" value={formInputs.order} onChange={handleChange} />
</label>
<br />
<input type="submit" value = "Submit Order" />
</form>
);
};
export default FoodOrderForm;