【发布时间】:2021-12-26 21:23:39
【问题描述】:
我有一个复选框,当它被选中/取消选中时,它会在控制台中写入 true 或 false,但是,当我尝试保存值时,它总是传递 false。
html:
<input type="checkbox"
name="Status"
value="Status"
onChange={(e) => {carStatus(e)}) />
const CarState = {
carId: 0,
Make: "",
Model: ""
Active: "" //this is a bit in the DB
}
const [carMake, setCarMake] = useState(CarState);
const [carModel, setCarModel] = useState(CarState);
const [carActive, setActive] = useState(CarState);
const carStatus = (e) => {
const status = e.target.checked;
if(status)
{
console.log("checked " + status);
setCarActive({ ...carActive, status});
}
else
{
console.log("checked" + status);
setCarActive({ ...carActive, status});
}
const saveCar = () => {
var data = {
make: carMake.CarMake,
model: carModel.Model,
active: saleActive.Active //always false even if checkbox is checked
};
//passes data to the API
}
有没有更好的方法或不同的方法?如果复选框被选中,我可以在 F12 中看到真/假,但是,当我单击保存按钮 [saveCar 功能] 时,只会传递假
【问题讨论】:
标签: reactjs react-native react-hooks use-state