[解決済み] Angularjs: input[text] ngChangeは値が変化している時に発生します。
2023-03-19 16:05:06
質問
ngChangeは値が変化している間、発射されます(ngChangeは古典的なonChangeイベントと似ていません)。コンテンツがコミットされたときにのみ発生する古典的なonChangeイベントをangularjsでバインドするにはどうすればよいですか?
現在のバインディング。
<input type="text" ng-model="name" ng-change="update()" />
どのように解決するのですか?
この記事 が表示されるまで入力に対するモデルチェンジを遅らせるディレクティブの例を示します。 ぼかし イベントが発生するまで、入力に対するモデルの変更を遅らせるディレクティブの例を示します。
ここで は、新しい ng-model-on-blur ディレクティブで ng-change が動作していることを示すフィドルです。これは オリジナルのフィドル .
ディレクティブをコードに追加すると、バインディングをこのように変更することになります。
<input type="text" ng-model="name" ng-model-onblur ng-change="update()" />
以下はディレクティブです。
// override the default input to update on blur
angular.module('app', []).directive('ngModelOnblur', function() {
return {
restrict: 'A',
require: 'ngModel',
priority: 1, // needed for angular 1.2.x
link: function(scope, elm, attr, ngModelCtrl) {
if (attr.type === 'radio' || attr.type === 'checkbox') return;
elm.unbind('input').unbind('keydown').unbind('change');
elm.bind('blur', function() {
scope.$apply(function() {
ngModelCtrl.$setViewValue(elm.val());
});
});
}
};
});
注: 以下のコメントで @wjin が言及しているように、この機能は Angular 1.3 (現在ベータ版) で直接サポートされています。
ngModelOptions
. 参照
ドキュメントを参照してください。
を参照してください。
関連
-
[解決済み] AngularJSで$httpリクエスト中にスピナーGIFを表示する?
-
[解決済み] プリフライト応答が成功しない
-
[解決済み] AngularJSとHandlebars - 両方必要なのかどうか
-
[解決済み] AngularJSを使用して、ブラウザのコンソールで$scope変数にアクセスするにはどうすればよいですか?
-
[解決済み] AngularJSのng-repeatでキーと値を反復処理する方法は?
-
[解決済み] AngularJSのng-optionsでvalueプロパティを設定するには?
-
[解決済み] 条件に応じて特定のルートにリダイレクトする機能
-
[解決済み】AngularJSのディレクティブスコープにおける「@」と「=」の違いは何ですか?
-
[解決済み】AngularJSのスコーププロトタイピング/プロトタイピング継承のニュアンスとは?
-
[解決済み] AngularJSでhiddenフィールドの値が送信されない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Angularjs accordion ng-click on panel-header
-
[解決済み] Angular JS $locationChangeStart 次の url ルートオブジェクトを取得する
-
[解決済み] AngularJS : ローカルストレージを使用する
-
[解決済み] 誰かangularjsの$qサービスの使用について説明してください。[重複しています]。
-
[解決済み] createspyとcreatespyobjの違いは何ですか?
-
angularjs が src で指定されたコンテンツを iframe 内で正しく表示しない
-
[解決済み] AngularJSで$scope.$watchと$scope.$applyを使用するにはどうすればよいですか?
-
[解決済み] 入力フィールドにフォーカスを当てるには?
-
[解決済み] ServiceとFactoryで迷う
-
[解決済み] AngularJSでEnterキーを押したときにフォームを送信する