[解決済み] chosen」プラグインでjQueryバリデーションを使用するには?
質問
私はいくつかの
<select>
の入力に
選択プラグイン
を使用している場合、クライアント側で "required" として検証したいことがあります。このプラグインは実際の select 要素を隠して div と spans でウィジェットを作成するため、ネイティブ HTML5 検証が正しく機能しないようです。フォームは送信されませんが (これは良いことです)、エラー メッセージが表示されないため、ユーザーは何が問題なのかわかりません (これは良くありません)。
私はjQueryのバリデーションプラグインに目を向けましたが(いずれは使うつもりでした)、今のところ運がありませんでした。以下は私の テストケース :
<form>
<label>Name: <input name="test1" required></label>
<label>Favorite Color:
<select name="test2" required>
<option value=""></option>
<option value="red">Red</option>
<option value="blue">Blue</option>
<option value="green">Green</option>
</select>
</label>
<input type="submit">
</form>
$(document).ready(function(){
$('select').chosen();
$('form').validate();
});
これは
select
を空の値で通してしまい、バリデーションやエラーメッセージを表示しません。コメントアウトすると
chosen()
行をコメントアウトすると、それはうまく動作します。
どのようにすれば
chosen()
の入力をjQuery validationプラグインで検証し、無効なものにはエラーメッセージを表示するにはどうしたらよいでしょうか?
どのように解決するのですか?
jQuery validateはhidden要素を無視しており、Chosenプラグインはhidden要素に
visibility:hidden
属性をselectに追加するので、試してみてください。
$.validator.setDefaults({ ignore: ":hidden:not(select)" }) //for all select
または
$.validator.setDefaults({ ignore: ":hidden:not(.chosen-select)" }) //for all select having class .chosen-select
の直前にこの行を追加します。
validate()
関数の前に追加してください。私はこれでうまくいきました。
関連
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] jQueryでチェックボックスに "checked "を設定する
-
[解決済み] どのラジオボタンが選択されているかをjQueryで知るにはどうしたらよいですか?
-
[解決済み] jQueryでページを更新するにはどうすればよいですか?
-
[解決済み] jQueryで要素にスクロールする
-
[解決済み] jQueryで入力を無効化/有効化する?
-
[解決済み] jQueryで複数のクラスを持つ要素を選択するにはどうすればよいですか?
-
[解決済み] jQueryでチェックボックスの値を取得する
-
[解決済み】jQueryでチェックボックスがチェックされているかどうかを確認するにはどうすればよいですか?
-
[解決済み] jQuery Validation プラグイン:指定した送信ボタンのバリデーションを無効にする
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
echarts-all.js:1 Uncaught TypeError: nullのプロパティ'getAttribute'を読み取ることができません。
-
[解決済み] 選択オプション「selected」を値で設定する
-
[解決済み] チェックボックスのチェック/アンチェックは、jqueryを使用していますか?重複
-
[解決済み] Twitter Bootstrapのモーダルクローズに関数をバインドする
-
[解決済み] jQuery: テーブルの行数を数える
-
[解決済み] CSSを使用してSVG画像の色を変更する方法(jQuery SVG image replacement)とは?
-
[解決済み] GoogleのCDNからjQuery UI CSSをダウンロードする
-
[解決済み] val()を使ってselectの値を設定しても、jqueryのchangeイベントが発生しないのはなぜですか?
-
[解決済み】フォームのhiddenフィールドにjQueryの".val() "を使って値を設定してもうまくいかない。
-
[解決済み】jQuery Validate - hiddenフィールドのバリデーションを有効にする