Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Forms 向Laravel提交带有Vue的表单数组_Forms_Laravel_Vuejs2_Axios_Laravel 5.4 - Fatal编程技术网

Forms 向Laravel提交带有Vue的表单数组

Forms 向Laravel提交带有Vue的表单数组,forms,laravel,vuejs2,axios,laravel-5.4,Forms,Laravel,Vuejs2,Axios,Laravel 5.4,在开始使用Vue之前,我有一个简单的表单,可以一次更新1列@1请求上的1个值。现在我正在使用Vue,我的表单有一个新的“中间”按钮,用于构建一个项目数组,以提交一个请求来动态更新多个列 现在的问题是启用了“防止默认”,我的原始表单提交不再有效,我需要使用Vue提交请求,或者是否有方法在按钮上重新启用默认操作?这太好了 <form @submit.prevent="newbutton"> // new button <button @click="newbutton">&

在开始使用Vue之前,我有一个简单的表单,可以一次更新1列@1请求上的1个值。现在我正在使用Vue,我的表单有一个新的“中间”按钮,用于构建一个项目数组,以提交一个请求来动态更新多个列

现在的问题是启用了“防止默认”,我的原始表单提交不再有效,我需要使用Vue提交请求,或者是否有方法在按钮上重新启用默认操作?这太好了

<form @submit.prevent="newbutton">

// new button
<button @click="newbutton"></button>

// original button
<button @click="submit" :id="{{ $element->id }}></button> // @submit.enableDefault ??

//新按钮
//原始按钮

prevent只是@submit上的一个助手方法。要允许这种差异,您需要将逻辑移到newbutton方法中

// in template remove prevent
<form @submit="newbutton" action="/where-this-should-post">

// in script move logic to your newbutton method
methods {
  newbutton(event) {
    if (formNotValid) {
      event.preventDefault()
    }
  }
}
//在模板中删除阻止
//在脚本中,将逻辑移动到newbutton方法
方法{
纽扣(事件){
如果(格式无效){
event.preventDefault()
}
}
}

有趣!如何测试formNotValid?谢谢你的帮助!无需测试formNotValid,只需激发事件。preventDefault();在中间按钮,取出@提交。预防,它的工作几乎与预期一样。现在的问题是将vue数据绑定到表单submission。它可以是一个计算属性,也可以创建一个函数并调用它。它将查看表单中的所有数据,并确保可以发送这些数据。也不需要在SPA中提供这些数据,只是在front endOk中更容易消除这些数据,这听起来像是一个单独的问题,您不需要使用vm.set设置数据([]在vue中不是被动的)。您应该首先通过使用axios发布类似字符串“foo”的内容,查看提交此文件是否与上述moving event.prevent default一起工作。如果数据到达那里,然后用新问题创建一个新问题,这将在将来帮助其他人。最好添加一个带有示例的JSFIDLE。