Javascript 取消选中复选框,并清除窗体上的下拉菜单
我想知道如何在提交时清除复选框和下拉菜单。我有其他字段,如姓名、电子邮件和密码,可使用此代码清除:Javascript 取消选中复选框,并清除窗体上的下拉菜单,javascript,reactjs,Javascript,Reactjs,我想知道如何在提交时清除复选框和下拉菜单。我有其他字段,如姓名、电子邮件和密码,可使用此代码清除: const formSubmit=e=>{ e、 预防默认值(); log(“表单已提交!”) setFormState({name:,email:,password:,role:,terms:})这是正常的。如果我很了解您的代码,首先对于角色,在setState中您设置为“role”,而在表单中您使用的是“form.roles”。其次,对于复选框,请使用checked属性,它是布尔值而不是字符
const formSubmit=e=>{
e、 预防默认值();
log(“表单已提交!”)
setFormState({name:,email:,password:,role:,terms:})
这是正常的。如果我很了解您的代码,首先对于角色,在setState中您设置为“role”,而在表单中您使用的是“form.roles”。其次,对于复选框,请使用checked属性,它是布尔值而不是字符串。在formSubmit事件中,您可以尝试将下拉值设置为默认值,如下所示:
setFormState({name:"", email: "", password: "", role:"Select One", terms: ""})
有关在React中选中取消选中复选框的信息,请参阅下面的链接以了解详细说明。
您应该将
CheckboxInput
的值
属性更改为checked
。这也意味着您的inputChange
处理程序都需要稍加修改,以处理复选框类型,并且您的术语
状态应该存储布尔值
,而不是字符串
setFormState({name:,email:,密码:,角色:,术语:false})
现在,Select
的默认选项似乎有两个值
选择一个
您可以保留第一个value=”“
,以便工作
选择一个
对于您的复选框
,通过使用选中的
(非值),为保持布尔状态并使用单独的onChange
工作
工作代码片段:
导出默认函数App(){
常量[formState,setFormState]=useState({
角色:“,
术语:假
});
const formSubmit=e=>{
e、 预防默认值();
console.log(“表单已提交!”);
setFormState({name:,email:,password:,role:,terms:false});
};
常量输入更改=e=>{
const target=e.target;
console.log(target.value);
setFormState(prev=>({…prev[target.name]:target.value});
};
返回(
你好,代码沙盒
选择一个
全栈Web开发人员
安卓开发工程师
iOS开发者
用户体验/用户界面设计器
{
const target=e.target;
setFormState(prev=>({…prev,terms:target.checked}));
}}
/>
提交
);
}
您能分享复选框和下拉列表的代码吗?是的,我将添加到我的主要问题中!