問題タブ [angularjs-model]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
588 参照

angularjs - angularJSの配列から特定のアイテムをフィルタリングする方法は?

ここに私のコントローラがあります:

そして、私のhtmlコードは次のとおりです。

「customers.name」のみでフィルタリングしたいのですが、顧客配列全体でフィルタリングするようになりました。

0 投票する
2 に答える
217 参照

javascript - あるコントローラのコンテンツを別のモデルでフィルタリングする (AngularJS)

私はこれに似たものを持っています:

しかし、入力バーで検索しても、リストには影響しません。あるコントローラーのモデルが別のコントローラーのコンテンツに影響を与えるようにするにはどうすればよいですか?

ありがとう。

編集

ControllerAお互いにControllerB完全に孤立していて、そのままにしておきたいと思っています。モデルを他のコントローラーと共有する必要がある場合、どのように使用$rootScopeすればよいですか?

0 投票する
1 に答える
901 参照

javascript - ng-clickでAngularJSモデルを更新し、DOMが応答しない

ボタンをクリックすると開くモーダルウィンドウ内に入力ボックスとテキストエリアがあります。同じ入力ボックスとテキストエリアが、目的の異なる 2 番目のモーダルで使用されています。各モーダルは異なるコントローラーの下にあります。したがって、最初のコントローラーのボタンをクリックすると、他のコントローラーのボタンをクリックしたときとは対照的に、特定の変更がモーダルに適用されます。

ただし、これらのコントローラはこれらの入力フィールドとテキストエリア フィールドを共有するため、コントローラ内の s によって、一方と他方の情報が相互に渡されることがng-modelあります。また、モーダル ウィンドウを開いて入力を入力し、それを閉じてから同じウィンドウを再度開いても、入力フィールドにコンテンツが残っていることがあります。

これはすべて、コントローラー内からこれらの入力/テキストエリア フィールドの内容を更新する方法がわからないためです。何が間違っているのかわかりません。モデルが DOM を更新していません。

ControllerA、新しい投稿の場合:

ControllerB、新しいコメントの場合:

index.htmlには、次のコードの呼び出しが 2 つあります。1 つは ControllerA の下、もう 1 つは ControllerB の下にあります。

titlepostContentは、それぞれの投稿またはコメント ボタンがクリックされるたびに空白に設定しようとしている 2 つのモデルであり、各コントローラーで定義されているクリック関数を呼び出します。ただし、DOM の空白は更新されません。

どんな助けでも大歓迎です!

更新: デバッグ ステートメントを通じて、コードを記述したように値自体が空白にリセットされていることを確認できましたが、その変更は DOM を尊重しません。また、これらのモデルで $scope.$watch を使用して同じことを試みましたが、うまくいきませんでした。

更新:選択した回答は機能しましたが、コードに他のさまざまなバグがあり、正しい回答が何らかの効果があるかのように機能しませんでした。しかし、それは今働いています!上記のコードではありません。

0 投票する
2 に答える
2009 参照

angularjs - コントローラー関数 Angularjs を呼び出している要素を参照する ( ng-change / ng-blur / ng-* ? )

元の質問では、コントローラー関数と呼ばれる要素を特定する方法について尋ねましたが、特に について質問しているのではなく、一般的にng-* ( 、、 、 ng-*)blurrについて質問していることを明確にしませんでした。したがって、それを念頭に置いて:ng-blurng-changeng-focusng-mouseover

どの要素入力がblurr()and/orcheck()関数を呼び出しているかを判断するにはどうすればよいですか?

html

js

「なぜ彼はこれをしたいのですか?」と自問しているかもしれません。
2 つの理由があります。

  1. 私は電話したいので:

    $scope.user_form[meta_test.[(whatever this element is.name)]].$setValidity('spike', false);

  2. 私は好奇心が強いので。これを行う簡単な方法が必要です。

(参考): 構文としてのコントローラー

0 投票する
1 に答える
881 参照

javascript - Angular.js ngTableは、既存の値を表示しない列として入力を選択します

私は Angular.js 1.2 を使用しており、ngTable のセルで Select 入力を使用しようとしています。オプション リストは表示されますが、ngModel ディレクティブは表示する項目を選択していないようです。

これは、現時点で私のテーブルがどのように見えるかです。

カテゴリとデフォルトの役割の列は常に選択されていないドロップダウンとして表示され、直接表示するtask.categoryIdtask.defaultRoleId、オプション リストの一部である値が表示されます。ここでさらに何かする必要がありますか?

編集

これが例です。私が期待していたのは、ドロップダウンで関連する値が選択されることでした。http://plnkr.co/edit/9DkSQT?p=preview

0 投票する
1 に答える
169 参照

javascript - angularjsで長さを示す入力フィールドのアスタリスク

作業中のアプリに angularjs を使用しています。

inputユーザーが入力しなければならない特定の長さの文字を含むフィールドが必要です。入力の長さを示すために、ユーザーがすでに何かを入力した場合、アスタリスク イベントによって文字数を示す入力フィールドが必要です (したがって、ユーザーが何かを入力しました!)。

たとえば、(Iはカーソル位置を示しています):

ユーザーがフォームを初めて見たとき:*****

ユーザーが入力フィールドをクリックします。I*****

ユーザーが最初の文字を入力します (例: an e):eI****

ユーザーはさらにいくつかの文字を入力します:equI**

ユーザーは 5 文字すべてを入力しました: equalI.

私がこれまでに持っているものは、ここの jsfiddleに表示されます。ここでの問題は、カーソルが正しい位置に配置されておらず、検証が今のところ機能していないことです。

誰かがそれを修正する方法を知っていますか?

どうもありがとう!