問題タブ [ng-class]
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.
javascript - ng-class は適用されません
AngularJS を使用してフォームを検証しようとしています。これは私のフォームです:
ng-class は適用されません。email.$valid、email.$invalid、email.$error を試しました。コントローラーはコンソールへのログ記録以外は何もしないので、呼び出されていることがわかります。ハードコードを設定$scope.email = 'asd@asd.com'
すると、正しく設定されます。
値を入力しないか無効な文字列を入力すると、ng-class が適用されないのはなぜですか?
angularjs - Angular の ng-class: 列挙型 (配列) クラスと条件ベースのクラスを組み合わせますか?
コントローラーにクラスが設定された配列があります(このようにする必要があります。ページのメタテンプレートから読み取られます)。また、同じ要素に条件付きクラスを適用したいと思います。出来ますか?
編集、詳細情報: 私の html 要素には、2 つのソースに由来するクラスがあります。1 つは、コントローラーによって作成された一連のクラスです (これらは、コード外のサービスによって提供されます。ビューにハードコードすることはできません)。もう 1 つのソースは条件の出力です (例: if "$scope.activeElement === name_of_this_element, add 'active' class)。ng
-class ディレクティブでは、指定されていないクラスのリストにオブジェクト表記を使用できません(最初のソース) 条件付きクラスにはオブジェクト表記を使用する必要があります。
編集:解決策が見つかりました(以下を参照)。
angularjs - ルーティング時に HTML タグの ng-class を更新する
AngularJS を使用して Chrome 拡張機能を作成しています。UI はブラウザー アクション ポップアップを介して提供され、コンテンツが変更されると、ポップアップのサイズを変更する必要が生じることがあります。私がこれを行うことができた唯一の方法は、クラスの条件付き更新を介して HTML および BODY タグの CSS サイズ属性を変更することです。
「doExpand」を設定するコントロールを ng-click すると、うまく機能します。ただし、ルーティングを使用して複数のビューを表示するようにアプリを更新しています。そうすることで、インラインコントローラー宣言を削除しています...
...そしてルーティング設定でそれを定義します:
ルーティングは機能していますが、問題は、HTML タグがビュー自体にあるため、コントローラーの範囲外になっていることです。ビューに BODY タグを貼り付けることはできますが、HTML タグについては同じことを行うことはできません。なぜなら、JS のインクルードは head などにある必要があるためです (およびその他の理由)。
このシナリオを処理する方法について誰かアドバイスをもらえますか? ありがとうございました!
angularjs - angularクラスディレクティブをブールおよび三項式と混合する方法はありますか?
angularクラス(ng-class)ディレクティブで三項式とブール式を組み合わせて記述しようとしています。しかし、それを機能させるための正しい構文が見つからないか、Web 上でまともな例を見つけることができません。
angularクラスディレクティブでは、次のような三項式を記述できることを知っています。
そして、次のようなブール式。
しかし、このようにそれらを混合する方法はありますか?
ありがとう
javascript - AngularJS:アイテムのリストで特定のアイテムを見つける/ng-classのifステートメント
すべてのユーザーのリストで現在のユーザーを強調表示したい。私のコードは次のようになります。
それらをループして、2 つが一致したときにクラスを追加するときにcurrentUser.id
比較したいことがあります。user.id
理論的には次のようなことをしたいと思います。
javascript - もう 1 つのクラスを 1 つの値にバインドする ng-class の使用方法
次のように、もう 1 つのクラスを値にバインドします。
ng-class
このように一度にバインドできる使用法はありますか? (以下のコードは動作しません)
javascript - angular jsで$scope変数を使用して要素にクラスを割り当てる方法
クラスがあります
を使用して、コントローラーのスコープ変数にクラス名を保存しています
クラスとして$scope.className
myに割り当てるにはどうすればよいですか?div
やっ<div ng-class="'{{className:true}}'"></div>
てみました うまくいきませんでした。
誰でも解決策を教えてもらえますか? 前もって感謝します!
javascript - AngularJS で ng-class を使用して異なる性質の複数の CSS クラス名を適用する
次の構造のディレクティブがあります。
以下i.labels
は CSS クラス名の配列で、i.id
とselectedId
は数字であり、これらはすべてコントローラ内で宣言されています。配列に含まれるすべてのクラスを適用し、i.labels
条件付きで. どうすればng-classでこれを行うことができますか?elSelected
mydir
javascript - AngularJS 1st ng-class は動作しますが、2nd は動作しません
私は次のものを持っています:
そして ( ng-include src="'views/sidebar.html'" )^ 内に、showSidebarの変更をトリガーする ng-click を含む次の div があります
$scope.showSidebar = true; resultsControllerにあり、ng-clickが呼び出されると、DIV1 の ng-class が有効になりますが、DIV2 では有効になりません。
何か案は?
javascript - 値と条件の両方を含む複雑な ng-class 式
ng-class に次の 2 つのことをさせたいとします。
1)そのように変数から値を入力します
と
2) 事前定義されたクラスを条件付きで設定します。
私は次のようなことができることを知っています
class="{{myAwesomeJavaScriptVariable}}" ng-class="{awesomeClass: myAwesomeBoolean}"
どうすれば (これが可能であれば)、これら 2 つを 1 つの ng-class 式に統合できますか?