2 つのボタン ラベルを持つ Angular フォームがあります。ワンクリックで ng のフォームを送信します (
をクリックしてください)。もう 1 つのボタンは、ng-click
を使用したナビゲーション専用です。ただし、2 番目のボタンをクリックすると、AngularJS によってページが更新され、404 がトリガーされます。関数にブレークポイントを配置し、関数をトリガーしています。次のいずれかを実行すると停止します:
ng-click
を削除すると、ボタンによってページが更新されません。 href=""
を使用してボタン タグをアンカー タグ (<a>
) に変更しても、更新は発生しません。 後者が最も簡単な解決策のように思えますが、なぜ AngularJS は関数の後にページのリロードを引き起こすコードを実行するのでしょうか?バグのようです。
表は次のとおりです:
リーリーこれはコントローラーのメソッドです:
ああああ
デフォルトのハンドラーをブロックしてみてください:
html:
リーリーjs:
リーリーW3C 仕様 を見ると、ボタン要素を送信したくない場合は、ボタン要素に type='button'
次の箇所に特に注意を払う必要がありますのタグを付けることができるようです。