Javascript 将信息从表单传递到函数

Javascript 将信息从表单传递到函数,javascript,reactjs,react-functional-component,Javascript,Reactjs,React Functional Component,我是react和js新手,我想创建一个包含一些可修改信息的编辑表单,这些信息可以稍后使用Axios发布到API。问题是,当我点击我的提交按钮时,我没有输入我的函数,我不知道我的表单信息是否正确地传递给我的编辑函数 function EditJob (jobid, event) { console.log('editjob fired 1') console.log(jobid) const updateJob = { title: event.target.jobtitle

我是react和js新手,我想创建一个包含一些可修改信息的编辑表单,这些信息可以稍后使用Axios发布到API。问题是,当我点击我的提交按钮时,我没有输入我的函数,我不知道我的表单信息是否正确地传递给我的编辑函数

function EditJob (jobid, event) {
  console.log('editjob fired 1')
  console.log(jobid)

  const updateJob = {
    title: event.target.jobtitle.value,
    company_name: event.target.companyname.value,
    internal_code: event.target.internalcode.value,
    department: event.target.department.value,
    location: event.target.jlocation.value,
    tags: event.target.tags.value,
    benefits: event.target.benefits.value,
    description: event.target.description.value,
    requirements: event.target.requirements.value
  }
  return axios({
    method: 'put',
    url: '/api/jobs/update-job/' + jobid,
    headers: headers,
    data: updateJob
  })
}

updateJob常量应该保存使用event.target从表单发送的信息,但我认为我做错了什么,因为我甚至没有输入函数,当我单击submit按钮时,我的页面只是刷新。正确的解决方案是什么?

表单的默认行为是在单击提交按钮时触发重新加载。可以通过在onSubmit方法中使用event.preventDefault来防止这种行为

<Form onSubmit = {async (event) => {
       event.preventDefault(); 
       await EditJob(job.id); 
       editJob() 
}}>

我现在得到一个事件是未定义的错误,但是为什么?您是否在onSubmit={async event=>{update:我从编辑作业中删除了事件,它被修复了,因为您的EditJob函数没有传递事件。请原谅另一个问题:我的服务器返回了400个错误,因为标记:Array[需要项目列表,但得到类型\str\。]
<Form onSubmit = {async (event) => {
       event.preventDefault(); 
       await EditJob(job.id); 
       editJob() 
}}>