2017-02-21 15 views
0

Vueの使用を開始する前に、一度に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

防止は、@サブミットの単なるヘルパーメソッドです。この分散を可能にするには、ロジックを新しいボタンメソッドに移す必要があります

// 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を取り出して、期待通りに動作します。問題は、フォームデータをフォームにバインドすることです。 – Dazzle

+1

これは計算されたプロパティでも、関数を作成して呼び出すこともできます。あなたのフォームにあるすべてのデータを見て、それを送信することがOKであることを確認します。 – Austio

関連する問題