問題タブ [ng-messages]

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 投票する
2 に答える
1734 参照

angularjs - ngMessages はディレクティブ テンプレート内では機能しません

ディレクティブ テンプレート内で ngMessages が機能しません。

テンプレートとリンク関数を含むディレクティブmyInputがあり、テンプレート関数内で、ラップされた<label>andのテンプレート文字列を作成します<input>

Link 関数内でrequire: '^form'FormController を使用し、フォーム名を取得します。次にngMessages、ラップされた要素の後にブロックを配置します。

使用法:

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

javascript - ngMessagesを使用したAngularJS:長さが無効なときにパターンをスキップする

私はそのようなフォームの部分を持っています:

たとえば、次のようになります。

通常の長さの電子メールを入力すると、無効なパターンが表示されます:

これは正常です。

しかし!

次のようなものを入力するとa@a.a、両方のエラーが発生します。

しかし、最小の長さが有効になるまでパターンメッセージをスキップするのは本当ですか?

私はそれを試してみます: data-ng-show="submittedFrgPwd && forgotForm.username.$error.pattern && !forgotForm.username.$error.minlength && !forgotForm.username.$error.maxlength"

うまくいくようですが、醜いです)

0 投票する
6 に答える
26421 参照

javascript - Angular ng-messages:パスワードの確認を確認するには?

状況:

angular アプリでの即時検証にng-messagesディレクティブを使用しています。「パスワードの確認」フィールドを検証する必要があり、その方法がわかりません。

コード:

質問:

ng-messages を使用してパスワード確認が一致することを確認するにはどうすればよいですか?

0 投票する
3 に答える
983 参照

angularjs - Angular JS - フォームの送信と有効な入力後に ng-message を非表示にする方法

AngularJS Messages を使用して単純なフォームを作成しています。基本的に私がしたいことは次のとおりです。

  • ユーザーがフォームを送信すると、該当するすべてのエラーが表示され、送信が妨げられます
  • ユーザーはフィールドを完成させ、フィールドから「フォーカスアウト」した後、エラーは 1 つずつ非表示になります ($touched ?)

最初のポイントは正常に機能していますが、2 番目の部分がわかりません。後でエラー メッセージをまったく非表示にすることはできません。簡単なものが欠けていると確信していますが、他の関連する質問はあまり役に立ちません。

何か案は?

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

angularjs - ng-message-exp はすべてのメッセージを表示します

を使用するng-messageと、意図したとおりに動作します。ただし、を使用しようとするとng-message-exp、すべてのメッセージが一度に表示されます。誰かがバグかどうかを確認できますか?

ここでplnkを見つけてください

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

angularjs - angularjsでngMessagesエラーを表示中のngifマークアップエラー

ngMessages を使用して動的に生成されたフォームを検証しています。これは ngRepeat.ngMessages を使用して正常に動作していますが、検証エラー メッセージを表示したいのは、送信ボタンがクリックされたときだけです。送信ボタンがクリックされ、現在のフォーム フィールドを確認するために ng-if を使用しています無効 。しかし、角度コンパイラエラーが発生しています。これは、コントロール名を動的に構築することに関係していると思います。

次のマークアップのどこが悪いのか、誰でも提案できますか。

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

javascript - ページ送信時にのみAngular JS ng-messageの更新

以下のコードのように、ページ送信時にのみ検証エラーを表示するフォームがあります。この検証は正常に機能しますが、ユーザーが入力フィールドの検証を修正するとすぐに機能します。検証メッセージはすぐに消えます。ユーザーがページを再度送信するまで、この検証メッセージを保持する方法はありますか? 私の要件は、検証メッセージがページの送信時にのみ表示および非表示になることです。

たとえば、ユーザーが日付を指定せずにフォームを送信すると、「日付は必須です」という検証メッセージがユーザーに表示されます。ユーザーが任意の値を入力すると、メッセージが表示されます。ページが再度送信されるまで、この検証メッセージを保持する必要があります。

ng-model-options を試しましたが、ページが送信されるまで入力フィールドの値が保持されません。

提案してください。