最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于jquery的可多選的下拉列表框

 更新時(shí)間:2012年07月20日 19:20:04   作者:  
同事在網(wǎng)上的找的下拉列表框出現(xiàn)位置不對的和加載慢的BUG,反正多選下拉列表框?qū)崿F(xiàn)也很簡單,與其看那些結(jié)構(gòu)混亂的代碼,不如自己重新實(shí)現(xiàn)一個(gè)
同事在網(wǎng)上的找的下拉列表框出現(xiàn)位置不對的和加載慢的BUG,反正多選下拉列表框?qū)崿F(xiàn)也很簡單,與其看那些結(jié)構(gòu)混亂的代碼,不如自己重新實(shí)現(xiàn)一個(gè)。

先看效果: http://demo.jb51.net/js/2012/jquery_demo/jquery_select.html

JS:
復(fù)制代碼 代碼如下:

(function ($) {
$.fn.extend({
MultDropList: function (options) {
var op = $.extend({ wraperClass: "wraper", 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 $wraper = $(conSelector).wrapAll("<div><div></div></div>").parent().parent().addClass(op.wraperClass);
var $list = $('<div class="list"></div>').appendTo($wraper);
$list.css({ "width": op.width, "height": op.height });
//控制彈出頁面的顯示與隱藏
$this.click(function (e) {
$list.toggle();
e.stopPropagation();
});
$(document).click(function () {
$list.hide();
});
$list.filter("*").click(function (e) {
e.stopPropagation();
});
//加載默認(rèn)數(shù)據(jù)
$list.append('<ul><li><input type="checkbox" class="selectAll" value="" /><span>全部</span></li></ul>');
var $ul = $list.find("ul");
//加載json數(shù)據(jù)
var listArr = op.data.split("|");
var jsonData;
for (var i = 0; i < listArr.length; i++) {
jsonData = eval("(" + listArr[i] + ")");
$ul.append('<li><input type="checkbox" value="' + jsonData.k + '" /><span>' + jsonData.v + '</span></li>');
}
//加載勾選項(xiàng)
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[index] = $(this).next().text();
});
$this.val(vArr.join(","));
});
//全部選擇或全不選
$("li:first input", $ul).click(function () {
if ($(this).attr("checked")) {
$("li input", $ul).attr("checked", "checked");
}
else {
$("li input", $ul).removeAttr("checked");
}
});
//點(diǎn)擊其它復(fù)選框時(shí),更新隱藏控件值,文本框的值
$("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(","));
$this.val(vArr.join(","));
});
});
}
});
})(jQuery);
$(document).ready(function () {
$("#txtTest").MultDropList({ data: $("#hfddlList").val() });
});
</script>

CSS:
復(fù)制代碼 代碼如下:

.wraper
{
position: relative;
}
.list
{
width: 200px;
height: 200px;
overflow: auto;
position: absolute;
border: 1px solid #617775;
display: none;
background: none repeat scroll 0 0 #F0F6E4;
float: left;
}
.list ul li
{
padding-left: 10px;
padding-top: 2px;
padding-bottom: 2px;
border-top: 1px solid black;
}
ul
{
list-style:none outside none;
}

HTML:
復(fù)制代碼 代碼如下:

<asp:HiddenField ID="hfddlList" runat="server" Value='{k:1,v:"南京"}|{k:2,v:"上海"}|{k:3,v:"揚(yáng)州"}|{k:4,v:"蘇州"}|{k:5,v:"無錫"}|{k:6,v:"常州"}|{k:7,v:"鹽城"}|{k:8,v:"徐州"}|{k:9,v:"泰州"}|{k:10,v:"淮安"}' />
<div class="testContainer">
<br />
<br />
<br />
<br />
<div style="margin-left: 300px; height: 30px;">
<asp:TextBox ID="txtTest" runat="server" Width="150px"></asp:TextBox>
<asp:HiddenField ID="hfTest" runat="server" Value="3,5" />
</div>
</div>

相關(guān)文章

  • jQuery實(shí)現(xiàn)單行文字間歇向上滾動源代碼

    jQuery實(shí)現(xiàn)單行文字間歇向上滾動源代碼

    使用jquery實(shí)現(xiàn)的文字向上滾動效果多的不計(jì)其數(shù)吧,間歇向上滾動卻不是那么的多,所以本文簡單的實(shí)現(xiàn)了一個(gè),感興趣的朋友可以參考下哈
    2013-06-06
  • jQuery文字輪播特效

    jQuery文字輪播特效

    本文給大家分享的是jQuery制作文字輪播的特效,非常的實(shí)用,屬于作者原創(chuàng)代碼,分享給大家
    2017-02-02
  • jQuery判斷郵箱格式對錯(cuò)實(shí)例代碼講解

    jQuery判斷郵箱格式對錯(cuò)實(shí)例代碼講解

    本文通過實(shí)例代碼給大家講解了基于jquery判斷郵箱格式對錯(cuò),非常實(shí)用,具有參考借鑒價(jià)值,需要的的朋友參考下吧
    2017-04-04
  • jQuery對table表格進(jìn)行增刪改查

    jQuery對table表格進(jìn)行增刪改查

    這篇文章主要為大家詳細(xì)介紹了jQuery對table表格進(jìn)行增刪改查操作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • jQuery DOM操作 基于命令改變頁面

    jQuery DOM操作 基于命令改變頁面

    每天都在與DOM打交道而且暈頭轉(zhuǎn)向,不過,自打咱認(rèn)識了jQuery: 是操作屬性也不煩了,插入新元素也不暈了,連移動元素及包裝元素咱也不抽筋了。。
    2010-01-01
  • jQuery Easyui使用(一)之可折疊面板的布局手風(fēng)琴菜單

    jQuery Easyui使用(一)之可折疊面板的布局手風(fēng)琴菜單

    這篇文章主要介紹了jQuery Easyui使用(一)之可折疊面板的布局手風(fēng)琴菜單的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-08-08
  • Jquery中.bind()、.live()、.delegate()和.on()之間的區(qū)別詳解

    Jquery中.bind()、.live()、.delegate()和.on()之間的區(qū)別詳解

    在我們?nèi)粘i_發(fā)中經(jīng)常會使用到.bind()、.live()、.delegate()和.on(),有些同學(xué)會對這四者存在一些疑慮,所以下面這篇文章主要給大家介紹了關(guān)于Jquery中.bind()、.live()、.delegate()和.on()之間區(qū)別的相關(guān)資料,需要的朋友可以參考借鑒。
    2017-08-08
  • 基于jQuery的合并表格中相同文本的相鄰單元格的代碼

    基于jQuery的合并表格中相同文本的相鄰單元格的代碼

    有時(shí)候需要合并表格中相同文本的相鄰單元格,需要的朋友可以參考下。
    2011-04-04
  • jQuery實(shí)現(xiàn)隔行變色的方法分析(對比原生JS)

    jQuery實(shí)現(xiàn)隔行變色的方法分析(對比原生JS)

    這篇文章主要介紹了jQuery實(shí)現(xiàn)隔行變色的方法,結(jié)合實(shí)例形式對比原生JS實(shí)現(xiàn)隔行變色的相關(guān)技巧,給出了2種jQuery實(shí)現(xiàn)隔行變色的方法,需要的朋友可以參考下
    2016-11-11
  • jQuery中g(shù)etJSON跨域原理的深入講解

    jQuery中g(shù)etJSON跨域原理的深入講解

    這篇文章主要給大家介紹了關(guān)于jQuery中g(shù)etJSON跨域原理的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09

最新評論

珠海市| 顺义区| 福建省| 墨玉县| 固原市| 兴业县| 涪陵区| 焦作市| 牙克石市| 民权县| 湘乡市| 滦南县| 施秉县| 丰县| 张家界市| 手游| 沙洋县| 贺兰县| 南靖县| 英德市| 贵港市| 冕宁县| 正宁县| 富平县| 达拉特旗| 沾化县| 武穴市| 钟祥市| 安义县| 寻乌县| 德化县| 互助| 永城市| 青神县| 威海市| 唐海县| 兴业县| 久治县| 砚山县| 乌拉特前旗| 开远市|