2016-04-06 15 views
-2

私には隔離されたスコープの指示があります。ディレクティブのテンプレートには、私はフォーム要素を持っています。なぜフォームが範囲にないのですか?AngularJsフォームがスコープの指示に含まれていません

<form ng-init="setForm(this)"> 

私はフォームをキャッチするようなものを試しました。しかし、あまりにも動作しませんでした。キーワードthisはスコープであり、フォームではありません。

もう1つの試みは、$scope.$watch(<myFormName>, function(){}を使用することでした。また、動作しませんでした。

どうすればいいですか?フォームに名前を付け、あなたのHTMLに

+0

[ask]と[mcve]を参照してください。あなたが提供したことを考えれば、質の高い回答を得ることはまずありません。 – Lex

答えて

0

<form name="signup"> 

これも

scope.signup 

そのフォームhasntが完全にレンダリングされていること可能その名前を使用して、スコープのプロパティを生じるはずです指示がリンクされるまでにページに移動します。ディレクティブを使用した一般的な問題は、基本的なタイムアウトを使用して一般的に解決されます。

scope.signup 
// undefined 

$timeout(function() { 
    scope.signup 
    // defined after initial angular digest 
}); 
+0

私は問題を示すためにプランナーを作成しました。 [それを見るためにここをクリック](http://plnkr.co/edit/nhM4u4d2oE7xUZmCfvWQ?p=preview) –

関連する問題