私のページには2つの選択肢があり、それらはサーバに表示されます。 無効なオプションにhidden
属性を適用して、下位選択で選択できるオプションをフィルタリングする「マスター」セレクトをここで選択します。Select Optionの表示問題
たとえば、このボトムセレクトには50個のオプションがありますが、そのうちの3個だけが「タイラー保険」に適用されます(下の図を参照)。無効なオプションは隠されています。 しかし、多くを非表示にすると、選択オプションが崩壊し、右側に小さいスクロールバーを持つオプションが1つだけ表示されます。矢印をクリックすると、オプションリストが予想どおりに上下にスクロールされ、その他のオプションはすべてそこに表示されます。これは機会にのみ発生します。ここで
このロジックを行い変更機能です。
$(top).change(function() {
//First, we make all options invisible.
$(bottom).find('option').prop("hidden", true);
//Then, if the selected option in the top select's ID is the same as the
//stored one on the bottom option, we unhide the option.
$(bottom).find('option[data-id="' + this.selectedOptions[0].dataset.id + '"]').prop("hidden", false);
}
この単列ボックスに崩壊から見えるのオプションを防ぐ方法があるかどうか私の質問は、もしそうなら、どのように私はそうやって行きますか?
追加情報:
何も他の変更のいずれかを選択し、他の選択は、この問題を持っているように見えません。
Google Chromeバージョン63.0.3239.84(公式ビルド)(64ビット版)を対象としています。 jQuery 2.1.4とBootstrap 3.3.0を利用しています。
最新のFirefox 57.0.2(64ビット)にしようとすると...
Chromeのバグと思われます。 https://jsfiddle.net/a2h0g8jb/1/では** ** ** ** ** **のオプションしか表示されません。ただし、** hidden **という属性を持っていても** One **がデフォルトで表示されます。*と*は 'display:none'と' visibility:hidden'に設定されています。 'option'要素を非表示にするのではなく、削除/復元する必要があるかもしれません。 –
これは有効な解決策です。それを回答として投稿したい場合、私はそれを受け入れるか、私が思いついた解決策を投稿することができます。 – Catch44
独自のソリューションを投稿して受け入れることができます。それを見ることに興味があるだろうか。 –