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

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

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

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

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

    jQuery文字輪播特效

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

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

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

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

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

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

    每天都在與DOM打交道而且暈頭轉(zhuǎn)向,不過,自打咱認(rèn)識(shí)了jQuery: 是操作屬性也不煩了,插入新元素也不暈了,連移動(dòng)元素及包裝元素咱也不抽筋了。。
    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)常會(huì)使用到.bind()、.live()、.delegate()和.on(),有些同學(xué)會(huì)對(duì)這四者存在一些疑慮,所以下面這篇文章主要給大家介紹了關(guān)于Jquery中.bind()、.live()、.delegate()和.on()之間區(qū)別的相關(guān)資料,需要的朋友可以參考借鑒。
    2017-08-08
  • 基于jQuery的合并表格中相同文本的相鄰單元格的代碼

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

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

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

    這篇文章主要介紹了jQuery實(shí)現(xiàn)隔行變色的方法,結(jié)合實(shí)例形式對(duì)比原生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ì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09

最新評(píng)論

青铜峡市| 无锡市| 凤凰县| 内江市| 临高县| 渑池县| 金湖县| 兴隆县| 寻甸| 望城县| 三河市| 许昌市| 洪洞县| 边坝县| 德江县| 扎兰屯市| 枞阳县| 九龙城区| 溆浦县| 镇沅| 郸城县| 凉城县| 揭东县| 治多县| 班戈县| 洞头县| 修武县| 元氏县| 黑山县| 水富县| 尚志市| 黔西县| 沙河市| 阜新市| 抚远县| 资源县| 德格县| 吉林市| 黑龙江省| 安丘市| 黄山市|