2013-08-17 9 views
7

テーブルの要素内にng-modelが許可されていますか?特定の列(ビュー)を変更すると、角度によって自動的にモデルが更新されますか?はテーブル内の​​要素内にngモデルが許可されていますか?

+0

*「特定の列」*をどのように変更するつもりですか? 'ng-model'はインタラクティブなコンテンツ要素を効果的にスコープにバインドしますが、テーブル要素は入力には使用できません。 –

+0

実際に私はインライン編集可能なテーブルを作成しています。そのため、モデルを列に関連付けて、何かの列(つまりビュー)のユーザー入力が角度を自動的に更新しても、それは起こっていないようにしたい。私は入力要素を使用していません。私は直接テーブルセルを編集可能にしています。それに対する提案はありますか? – Pratz

答えて

8

HTML contenteditableアトリビュートを使用してテーブルセルを直接編集できるようにする場合、ng-modelはデフォルトで自動的には機能しません。これはフォームエレメントにのみ適用されます。

ただし、contenteditableでも動作させることができます。角度のあるウェブサイトでそれを行う方法の実例がありますhttp://docs.angularjs.org/api/ng.directive:ngModel.NgModelController

+1

ビンゴ...それは働いた。いくつかの回避策を作る必要がありますが、最終的にはNgModelControllerを使用して作業しました:) – Pratz

+0

こんにちはPratz、何をしましたか?それは私のために働いていないので –

+0

同じここ..私のために働いていない... – Ziggler

2

NG-モデルは、典型的なフォーム要素は、そのディレクティブを使用することができますが存在するところはどこでも、それは少しトリッキーすることができます私はNG-モデルについて言うだろう(input, select and textarea

ことの一つは、あなたがNGをバインドしたいということです許可されています単純なスコープ変数ではなく、オブジェクトのプロパティにモデル化します。私は$ scope.fooをng-modelにバインドして入力コントロールで使用するいくつかのインスタンスを実行しました。次に、入力フィールドをクリアすると、バインディングが失われ、変数の更新が停止します。 $ scope.fooObj.modelPropのようなものを使用してください。ここで、fooObjはオブジェクトであり、正常に動作します。

+0

インライン編集可能なテーブルを作成しているので、テーブルの列に入力要素を使用することはできません。私はng-modelでも$ scope.fooObj.propertyを使ってみましたが、助けにもなりませんでした。なにか提案を? – Pratz

関連する問題