ng-bookから:ng-submitはデフォルトアクションを防止します - 意味ですか?
ng-submitを使用して、式をonsubmitイベントにバインドします。このディレクティブは、フォームにアクション属性が含まれていない場合にのみ、デフォルトのアクション(リクエストの送信とページの再ロード)も防止します。
上記の段落の意味はなんですか?
ng-bookから:ng-submitはデフォルトアクションを防止します - 意味ですか?
ng-submitを使用して、式をonsubmitイベントにバインドします。このディレクティブは、フォームにアクション属性が含まれていない場合にのみ、デフォルトのアクション(リクエストの送信とページの再ロード)も防止します。
上記の段落の意味はなんですか?
それは意味:
<form ng-submit="submit()"></form>
が提出したイベントを防ぐことができます。そしてあなたのサーバーにフォームを投稿しないでください。
しかし
<form ng-submit="$ctrl.submit()" action="/url" method="post"></form>
は、デフォルトではイベントを提出防ぐことはできません。 何もしないと、あなたのフォームは古典的なhtmlフォームとして扱われ、あなたのサーバーの/ urlに(コントローラのサブミットコードの後に)結果を投稿します。この場合には、それを防ぐために
、あなたがこの方法を提出してイベントを渡す必要があります:
<form ng-submit="$ctrl.submit($event)" action="/url" method="post"></form>
そして、あなたのコントローラで:
function submit(event) {
event.preventDefault();
}
<form>
タグはこれらの両方を持っている場合属性:<form ng-submit="submit()" action="http://example.com">
この場合、アクションリンクにリダイレクトされるだけでなく、 "submit()"メソッドも呼び出されます。ng-submit
しか持っていないし、アクション属性を持たない場合:<form ng-submit="submit()">
この場合、提出時にリダイレクトされず、submit()
メソッドを実行するだけです。
かなり自明のようです。どうしたら分かりませんか? – TZHX