zoukankan      html  css  js  c++  java
  • 【原创】jquery实现2个listbox数据传递

    点击左侧listbox,将点击项添加到右侧listbox。

    点击右侧listbox,则移除点击项。listbox可以有后台数据库输出。

     <li style="height: 250px; margin: 5px 0px">权限列表<br />

    <select size="4" name="lb_list" multiple="multiple" id="lb_list" style="height:200px;150px;">

    <option value="1">后台登录</option>

    <option value="2">密码修改</option>

    <option value="3">新闻添加</option>

    <option value="4">新闻编辑</option>

    <option value="5">新闻删除</option>

    <option value="6">新闻发布</option>



    </select>

    </li>

    <li style="padding-top: 110px">==========>><br />

    <<==========</li><li style="height: 250px; margin: 5px 0px">当前权限<br />

    <select size="4" name="lb_list_sel" multiple="multiple" id="lb_list_sel" style="height:200px;150px;">

    <option value="1">后台登录</option>

    <option value="2">密码修改</option>

    <option value="3">新闻添加</option>



    </select>

    </li>

    js代码:(注意使用jquery1.6+)

    View Code
     1 $(function () {
    2
    3 //添加到右边
    4 $('#lb_list>option').click(function () {
    5
    6 var slt_length = $('#lb_list_sel>option').length; //不能放for循环,会造成死循环
    7 var ishave = false; //是否存在
    8
    9 for (var i = 0; i < slt_length; i++) {
    10 if ($('#lb_list').find("option:selected").prop('value') == $('#lb_list_sel>option').eq(i).prop('value')) {
    11 ishave = false;
    12 break;
    13 } ishave = true;
    14 }
    15 if (slt_length == 0) {
    16 ishave = true;
    17 }
    18 if (ishave) {
    19 var temp = $('#lb_list').find("option:selected").clone();//如果这不用clone,那左侧的option项就会减少
    20 $(temp).appendTo('#lb_list_sel');
    21 }
    22 var slt_fids = '';
    23 for (var i = 0; i < $('#lb_list_sel>option').length; i++) {
    24 slt_fids += $('#lb_list_sel>option').eq(i).prop('value') + ',' + $('#lb_list_sel>option').eq(i).prop('text') + '|';
    25 }
    26 $('#hf_slt_fids').val(slt_fids); //需要传到服务器的值
    27 })
    28
    29 //后边删除
    30 $('#lb_list_sel').click(function () {
    31 $('#lb_list_sel').find("option:selected").remove(); //或者 $('#lb_list_sel>option:eq(索引)')
    32 var slt_fids = '';
    33 for (var i = 0; i < $('#lb_list_sel>option').length; i++) {
    34 slt_fids += $('#lb_list_sel>option').eq(i).prop('value') + ',' + $('#lb_list_sel>option').eq(i).prop('text') + '|';
    35 }
    36 $('#hf_slt_fids').val(slt_fids); //隐藏域值格式 value,text|value,text|
    37
    38 })
    39
    40 })
  • 相关阅读:
    initwithcoder和 initwithframe 区别?
    iOS图形处理和性能
    iOS图形处理和性能
    Objc的底层并发API
    Objc的底层并发API
    位运算
    位运算
    网页开发的6种在线调试环境
    网页开发的6种在线调试环境
    Python基本语法_函数属性 & 参数类型 & 偏函数的应用
  • 原文地址:https://www.cnblogs.com/zhxhdean/p/2217976.html
Copyright © 2011-2022 走看看