我是 React 的新手,我正在使用 FormIK,它可以很好地发布表单数据,除非我向其中添加隐藏字段。
<Field type="hidden" className="form-control" name="hiddenField" />
Run Code Online (Sandbox Code Playgroud)
当我发布表单时,它会发送隐藏字段的空值我也向 Formik 提供了初始值
<Formik initialValues={{
first_name:'',last_name:'',username:'',email:'',password:'',
password_confirmation:'',distributor:'',phone_number:'',address:'',country:'',
state:'',city:'',zip_code:'',hiddenField:''
}} >
Run Code Online (Sandbox Code Playgroud)
有什么遗漏吗?
小智 13
我刚刚也遇到了这个问题。我的解决方法是只添加一个初始值,甚至不使用隐藏字段。结果是,在 中onSubmit(),values对象包含我的隐藏字段键和initialValues值。
我想知道是否有人知道解决此问题的正确方法?我的方式似乎有点hacky?
这是我在 Formik 中管理隐藏字段值的方法
setFieldValue在标签之前传递as 参数
{({ values, errors, touched, handleSubmit, setFieldValue , isSubmitting }) => (
<Form>
<div className="form-group has-feedback">
<input type="hidden" value="testing" name="hiddenField" />
Run Code Online (Sandbox Code Playgroud)
然后我设法改变了它的 onClick 方法(可以根据需要使用)
<button type="submit" className="btn btn-primary btn-block btn-flat"
onClick={() => {setFieldValue("hiddenField", "yourValueHere OR dynamicVariable"); }}
disabled={isSubmitting}>Register</button>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11474 次 |
| 最近记录: |