jQuery Chosen通用初始化詳解
本文主要介紹了jQuery Chosen通用初始化,非常不錯,具有參考借鑒價值,需要的朋友可以參考下,希望能幫助到大家。
一直在用Chosen這個js插件,其目的就是美化下拉框。 github位址:https://harvesthq.github.io/chosen/
no_results_text:"xxxxx"無搜尋結果時顯示的文字
allow_single_deselect:true 是否允許取消選擇
disable_search : true 是否有搜尋方塊出現
max_selected_options:當select為多重選擇時,最多選擇個數
官方說明文檔位址
配置選項的官方說明文件位址
/* 功能: Chosen通用初始化 * 创建人:Brian 创建时间:2016-12-13 */ (function ($j) { var chosenTool = function (el, options) { this.opts = options; this.chosenInit(); this.chose_get_init(); this.chose_mult_set_init(this.opts.hidClassName); this.clickEvent(); return this; } chosenTool.opts = { selectId: '',//selectId hidClassName: '',//隐藏域Class placeholdertxt: '',//select中placeholder文字 noresulttxt: '',//输入的名称未查到时显示的文字 dataJson: ''//数据源 }; $j.fn.myChosenTool = function (opt) { var value, args = Array.prototype.slice.call(arguments, 1); var $jthis = $j(this), data = $jthis.data('chosenTool'), options = $j.extend({}, chosenTool.opts, $jthis.data(), typeof option === 'object' && option); if (typeof option === 'string') { //判断用户调用的方法是否存在 //if ($j.inArray(option, allowedMethods) < 0) { // throw new Error("Unknown method: " + option); //} if (!data) { return; } value = data[option].apply(data, args); if (option === 'destroy') { $jthis.removeData('chosenTool'); } } /*插件外部调用插件内部的方法需要修改成下面形式*/ //if (typeof opt === 'string') { // if (!data) { // return; // } // value = data[opt].apply(data, args); // if (opt === 'destroy') { // $jthis.removeData('chosenTool'); // } //} if (!data) { opt["selectId"] = $j(this).attr("id"); $jthis.data('chosenTool', (data = new chosenTool(this, opt))); } console.log(data); return typeof value === 'undefined' ? this : value; }; chosenTool.prototype.clickEvent = function () { var _this = this; $j("#" + this.opts.selectId).on("change", function () { _this.chose_get_value(); }); }; /*下拉框初始化方法*/ chosenTool.prototype.selectInfoInit = function () { var proOPts = ""; this.opts.dataJson = $j.parseJSON(this.opts.dataJson); $j.each(this.opts.dataJson, function (index, item) { proOPts += "<option value='" + item.ValueField + "'>" + item.TextField + "</option>"; }); $j("#" + this.opts.selectId).append(proOPts); //初始化chosen $j("#" + this.opts.selectId).chosen({ allow_single_deselect: true, //是否允许取消选择 placeholder_text_multiple: this.opts.placeholdertxt, //多选框没有选中任何值的时候 显示的文字 no_results_text: this.opts.noresulttxt,//无搜索结果时显示的文本 search_contains: true//是否支持模糊搜索 }); }; /*对象初始化方法*/ chosenTool.prototype.chosenInit = function () { this.selectInfoInit(); }; //私有方法,检测参数是否合法 chosenTool.prototype.isValid = function () { return !this.options || (this.options && typeof this.options === "object") ? true : false; }; //数据同步 chosenTool.prototype.chose_get_init = function () { var selectId = this.opts.selectId; $j("#" + this.opts.selectId).chosen().change( function () { $j("#" + selectId).trigger("liszt:updated");//更新下拉框 }); }; //单选select value获取 chosenTool.prototype.chose_get_value = function () { var selectVal = $j("#" + this.opts.selectId).val(); $j("." + this.opts.hidClassName).val(selectVal); }; //单选select value获取 chosenTool.prototype.chose_mult_set_init = function () { var values = $j("." + this.opts.hidClassName).val(); if (values && values.indexOf(',') > 0) { var arr = values.split(','); var length = arr.length; var value = ''; for (i = 0; i < length; i++) { value = arr[i]; $j("#" + this.opts.selectId + " [value='" + value + "']").attr('selected', 'selected'); } } else { $j("#" + this.opts.selectId + " [value='" + values + "']").attr('selected', 'selected'); } $j("#" + this.opts.selectId).trigger("liszt:updated"); }; //select text获取,多选时请注意 chosenTool.prototype.chose_get_text = function () { return $j("#" + this.opts.selectId + " option:selected").text(); }; })(jQuery);
相關推薦:
#jQuery Validate 無法驗證chosen-select元素如何解決
#Chosen 基於jquery的選擇框外掛程式使用方法_jquery
#Jquery chosen動態設定值實例介紹_jquery
以上是jQuery Chosen通用初始化詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

jQuery引用方法詳解:快速上手指南jQuery是一個受歡迎的JavaScript庫,被廣泛用於網站開發中,它簡化了JavaScript編程,並為開發者提供了豐富的功能和特性。本文將詳細介紹jQuery的引用方法,並提供具體的程式碼範例,幫助讀者快速上手。引入jQuery首先,我們需要在HTML檔案中引入jQuery函式庫。可以透過CDN連結的方式引入,也可以下載

許多遊戲玩家遇到了遊戲無法初始化圖形系統的令人沮喪的問題。這篇文章將深入探討這個問題背後的常見原因,並找到簡單而有效的解決方案,讓你重新回到棋盤上,並在任何時間內通過關卡。因此,如果你在過山車大亨、刺客信條、托尼霍克的職業溜冰者等中收到無法初始化圖形系統錯誤訊息,請遵循本文中提到的解決方案。初始化錯誤無法初始化圖形系統。不支援顯示卡。修復無法初始化圖形系統錯誤訊息要解決過山車大亨、刺客信條、托尼霍克的專業溜冰者等遊戲中的無法初始化圖形系統錯誤,可以嘗試執行以下解決方法:更新顯示卡驅動程式在兼容模

jQuery中如何使用PUT請求方式?在jQuery中,發送PUT請求的方法與發送其他類型的請求類似,但需要注意一些細節和參數設定。 PUT請求通常用於更新資源,例如更新資料庫中的資料或更新伺服器上的檔案。以下是在jQuery中使用PUT請求方式的具體程式碼範例。首先,確保引入了jQuery庫文件,然後可以透過以下方式發送PUT請求:$.ajax({u

jQuery如何移除元素的height屬性?在前端開發中,經常會遇到需要操作元素的高度屬性的需求。有時候,我們可能需要動態改變元素的高度,而有時候又需要移除元素的高度屬性。本文將介紹如何使用jQuery來移除元素的高度屬性,並提供具體的程式碼範例。在使用jQuery操作高度屬性之前,我們首先需要了解CSS中的height屬性。 height屬性用於設定元素的高度

標題:jQuery小技巧:快速修改頁面所有a標籤的文字在網頁開發中,我們經常需要對頁面中的元素進行修改和操作。使用jQuery時,有時候需要一次修改頁面中所有a標籤的文字內容,這樣可以節省時間和精力。以下將介紹如何使用jQuery快速修改頁面所有a標籤的文本,同時給出具體的程式碼範例。首先,我們需要引入jQuery庫文件,確保在頁面中引入了以下程式碼:<

標題:使用jQuery修改所有a標籤的文字內容jQuery是一款受歡迎的JavaScript庫,被廣泛用於處理DOM操作。在網頁開發中,經常會遇到需要修改頁面上連結標籤(a標籤)的文字內容的需求。本文將介紹如何使用jQuery來實現這個目標,並提供具體的程式碼範例。首先,我們需要在頁面中引入jQuery庫。在HTML檔案中加入以下程式碼:

jQuery是一種流行的JavaScript庫,被廣泛用於處理網頁中的DOM操作和事件處理。在jQuery中,eq()方法是用來選擇指定索引位置的元素的方法,具體使用方法和應用場景如下。在jQuery中,eq()方法選擇指定索引位置的元素。索引位置從0開始計數,即第一個元素的索引是0,第二個元素的索引是1,依此類推。 eq()方法的語法如下:$("s

如何判斷jQuery元素是否具有特定屬性?在使用jQuery操作DOM元素時,常會遇到需要判斷元素是否具有某個特定屬性的情況。在這種情況下,我們可以藉助jQuery提供的方法來輕鬆實現這項功能。以下將介紹兩種常用的方法來判斷一個jQuery元素是否具有特定屬性,並附上具體的程式碼範例。方法一:使用attr()方法和typeof運算子//判斷元素是否具有特定屬
