2016-08-11 14 views
0

私はこれが愚かに聞こえるが、角度2のアプリとワークフローのある時点で、<form>POSTメソッドを使用してを提出したいと考えています。 私はAJAXなどを呼びたくないので、単にのフォームを提出したいと思います。角度指令内で実際のフォームポストを実行するにはどうすればよいですか?

私はディレクティブの外側に上記のコードを置く
<form action="http://server.com/address/to/submit" method="post"> 
    <input name="test" value="dummy" type="hidden"> 
    <button type="submit">Submit</button> 
</form> 

(したがって、index.htmlで)予想されるように、フォームを提出します。

しかし、上記のコードが指令の中にある場合、それは提出しません。

ユーザーがsubmitにヒットしたときに私の角張ったアプリケーションが終了することを理解していますが、これは私の使用例では問題ありません。

+1

これは奇妙でした。私はあなたのアプリケーションでそれを防止するいくつかのカスタムコードが必要であると信じています。このプランナーで見られるように、http://plnkr.co/edit/cC8GFjrn8i9zq1mwPeMIでは、依然としてフォームを提出できます。 –

+0

興味深い!あなたは明らかに正しいです、あなたのプランナーは働きます。この時点で、私のアプリはまっすぐな角度2のクイックスタートです。更新された場合に備えて、私が行っているバージョンを確認しましょう。 –

+0

さて、私はおじさんになるでしょう、私はノードサーバーを再起動し、クロムの開発者ツールを出し入れしました。さて、問題は解決しました、ありがとう! –

答えて

0

2.0.0-rc.5にアップグレードした後、状況が改善されました。ただし、アプリの別の部分に@angular/formsモジュールを有効にした後、モジュールは送信を停止しました。 私はthis answerで説明されているように、ngNoFormディレクティブ/アトリビュートを使用する必要があります。

documentationは少しわかりにくいです。よく見ると、selectorsにはform:not([ngNoForm]):not([ngFormModel])が表示されます。私はjQueryのエキスパートではありませんが、これはでなく、ngNoForm属性を持つform要素に適用されることを示しているようです。

関連する問題