jquery_jquery に基づく複数選択可能なドロップダウン リスト ボックス
同僚は、インターネット上でドロップダウン リスト ボックスの位置の誤りや読み込みの遅さなどのバグを発見しました。とにかく、複数選択のドロップダウン リスト ボックスの実装は、複雑な構造ではなく、非常にシンプルです。コードを再実装することをお勧めします。
最初に効果を見てください: http://demo.jb51.net/js/2012/jquery_demo/jquery_select.html
JS:
(function ($) {
$.fn.extend ({
MultDropList: function (options) {
var op = $.extend({ WraperClass: "wrapper", width: "150px", height: "200px", data: "", selected: "" }, options);
return this.each(function () {
var $this = $(this); //TextBox へのポイント
var $hf = $(this).next(); //非表示のコントロール ストレージへのポイント
var conSelector = "#" $this.attr("id") ",#" $hf.attr("id")
var $wrapper = $(conSelector); .wrapAll("
var $list = $(' ').appendTo($wrapper);
$list.css({ "width": op.width, "height": op.height }) ;
//ポップアップ ページの表示と非表示を制御します
$this.click(function (e) {
$list.toggle();
e.stopPropagation();
} );
$(ドキュメント ).click(function () {
$list.hide();
});
$list.filter("*").click(function (e) ) {
e.stopPropagation ();
});
//デフォルトデータをロードします
$list.append('
- すべて
var $ul = $list.find("ul") ;
//json データの読み込み
var listArr = op.data.split("|");
var jsonData;
for (var i = 0; i
$ul.append('
}
//チェックオプションをロードします
var seledArr;
if ( op.selected.length > 0 ) {
seledArr = selected.split(",");
else {
seledArr = $hf.val().split("," );
}
$.each(seledArr, function (index) {
$("li input[value='" seledArr[index] "']", $ul).attr("checked ", "checked");
var vArr = new Array();
$("input[class!='selectAll']:checked", $ul).each(function (index) {
vArr[インデックス] = $(this).next().text();
$this.val(",");
//すべて選択またはすべてを選択 Uncheck
$("li:first input", $ul).click(function () {
if ($(this).attr("checked")) {
$("li input ", $ul).attr("checked", "checked");
}
else {
$("li input", $ul).removeAttr(" selected");
}
});
//他のチェックボックスをクリックすると、非表示のコントロールの値とテキストボックスの値が更新されます
$("input", $ul)。 click(function () {
var kArr = new Array();
var vArr = new Array();
$("input[class!='selectAll']:checked", $ul) .each(function (index) {
kArr[index] = $(this).val();
vArr[index] = $(this).next().text();
} );
$hf.val (kArr.join(","));
}
}) ;
})(jQuery);
$(document).ready(function () {
$("#txtTest").MultDropList({ data: $ ("#hfddlList").val( ) });
CSS:
コードをコピーします
コードは次のとおりです:
高さ: 200 ピクセル;
位置: 絶対;
表示: なし;
背景: なし繰り返しスクロール 0 0 #F0F6E4 ;
float: left;
}
.list ul li
{
padding-left: 10px; : 2px;
padding-bottom: 2px;
border-top: 1px ソリッドブラック
}
list-style:none 外側
}
HTML:
コードをコピー
コードは次のとおりです:
;div style="margin-left: 300px; height: 30px;">

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









記事では、JavaScriptライブラリの作成、公開、および維持について説明し、計画、開発、テスト、ドキュメント、およびプロモーション戦略に焦点を当てています。

この記事では、ブラウザでJavaScriptのパフォーマンスを最適化するための戦略について説明し、実行時間の短縮、ページの負荷速度への影響を最小限に抑えることに焦点を当てています。

フロントエンドのサーマルペーパーチケット印刷のためのよくある質問とソリューションフロントエンド開発におけるチケット印刷は、一般的な要件です。しかし、多くの開発者が実装しています...

スキルや業界のニーズに応じて、PythonおよびJavaScript開発者には絶対的な給与はありません。 1. Pythonは、データサイエンスと機械学習でさらに支払われる場合があります。 2。JavaScriptは、フロントエンドとフルスタックの開発に大きな需要があり、その給与もかなりです。 3。影響要因には、経験、地理的位置、会社の規模、特定のスキルが含まれます。

この記事では、ブラウザ開発者ツールを使用した効果的なJavaScriptデバッグについて説明し、ブレークポイントの設定、コンソールの使用、パフォーマンスの分析に焦点を当てています。

同じIDを持つ配列要素をJavaScriptの1つのオブジェクトにマージする方法は?データを処理するとき、私たちはしばしば同じIDを持つ必要性に遭遇します...

この記事では、ソースマップを使用して、元のコードにマッピングすることにより、Minified JavaScriptをデバッグする方法について説明します。ソースマップの有効化、ブレークポイントの設定、Chrome DevtoolsやWebpackなどのツールの使用について説明します。

JavaScriptは現代のWeb開発の基礎であり、その主な機能には、イベント駆動型のプログラミング、動的コンテンツ生成、非同期プログラミングが含まれます。 1)イベント駆動型プログラミングにより、Webページはユーザー操作に応じて動的に変更できます。 2)動的コンテンツ生成により、条件に応じてページコンテンツを調整できます。 3)非同期プログラミングにより、ユーザーインターフェイスがブロックされないようにします。 JavaScriptは、Webインタラクション、シングルページアプリケーション、サーバー側の開発で広く使用されており、ユーザーエクスペリエンスとクロスプラットフォーム開発の柔軟性を大幅に改善しています。
