2017-02-21 33 views
0

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

问题是现在,防止默认启用,我的原始表单提交不再起作用,我需要提交请求与Vue或有没有办法重新启用按钮上的默认操作?这会很好。

<form @submit.prevent="newbutton"> 

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

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

回答

1

阻止只是@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() 
    } 
    } 
} 
+0

有趣!你如何测试formNotValid?谢谢您的帮助! – Dazzle

+0

无需测试formNotValid,只需触发event.preventDefault();在中间的按钮,并拿出@ submit.prevent,它的工作原理与预期的几乎一样。现在的问题是绑定vue数据以提交表单 – Dazzle

+1

它可以是一个计算属性,或者您可以创建一个函数并调用它。它会查看表单中的所有数据,并确保可以发送它。 – Austio