質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

3回答

5293閲覧

複数の入力チェックルールをor判定にしたい[jquery][validation plugin]

退会済みユーザー

退会済みユーザー

総合スコア0

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2015/12/11 02:07

【やりたいこと】
以下のようにinputタグの入力欄があるとして、
AとBには別々のrulesを設定しています。

このときにAのrulesまたは、Bのrulesどちらかを達成していれば、どちらもエラーではないと判定したい。

都合(機能)によりBはHTML上からいなくなる場合があり、ひとつのrulesにしづらい。

A:[ ]

B:[ ]

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

http://kudakurage.hatenadiary.com/entry/20091211/1260521031
required メソッド参照、依存関係の設定が出来るようです。
a のvalid が ok のとき、b がブランクでも良い。
b のvalud が ok のとき、a がブランクでも良い。
但し、場合により、b は画面に存在しない時がある。

a,b 入力の必須条件の依存条件を設定してあげれば良さげですね。

投稿2015/12/11 09:17

ipadcaron

総合スコア1693

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/12/15 02:07

回答ありがとうございます。確認してみます。
guest

0

ベストアンサー

上から包む感じでorできなさそうだったので以下のように自身で書いて解決しました。

B要素がある場合とない場合でjsがどちらの機能か判断できるようにhtml側で変数を用意。
(当方はthymeleaf + EL式を利用)
Aのみを検証するメソッド、AとBを検証するメソッドを作成し、当該メソッドに上記の変数を利用して実行可否を判断するように実装。

投稿2015/12/15 07:13

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

こういう感じですか。

lang

1/** 2 * @return Boolean 3 */ 4function validateInputData() { 5 var valueA = $("#A").val(); 6 var valueB = $("#B").val(); 7 return checkRuleA(valueA) || (valueB !== void 0 && checkRuleB(valueB)); 8} 9 10/** 11 * @param String value 12 * @return Boolean 13 */ 14function checkRuleA(value) { 15 // do something 16} 17 18/** 19 * 同上 20 */ 21function checkRuleB(value) { 22 // do something 23}

##追記
今更ですがタイトルを見返して気づきました。これValidation Pluginの話だったのですね…。
私の回答は無視してください。

投稿2015/12/11 06:39

編集2015/12/11 08:32
htsign

総合スコア870

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/12/15 02:02

解答ありがとうございます。どうしようもなくなったら上記の様に自身で書く事にします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問