`
run_wang
  • 浏览: 168792 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

用javaScript实现两个复选框之间选项的移动和提交目标框中的选项

 
阅读更多
用javaScript实现两个复选框之间选项的移动和提交目标框中的选项

HTML的写法

view plain
<select size="10" multiple="multiple" id="allChoices"><!--注意multiple属性--> 
         <option value="1">tom</option> 
         <option value="2">jim</option 
         <option value="3">kate</option> 
</select> 
<input type="button" value="添加" id="inbutton"/> 
<input type="button" value="移除" id="outbutton"/> 
<select size="10" multiple="multiple" id="target"></select> 
<div> 
    <input type="submit" class="button" value="保存"/> 
        <input type="hidden" id="selectedvalues" value=""/> 
<!--为了记录目前选中的值,每次移动都会触发隐藏域 值的改变--> 
</div> 


实现复选框之间选项的移动

思路:当点击添加时,会触发对第一个复选框中选中状态的option循环,依次添加到另一个复选框中,点击移除时同理

view plain
$(document).ready(function(){ 
    $("#inbutton").click(function(){ 
        $("#allChoices option:selected").each(function(){ 
            $("#target").append($(this)); 
        }); 
    }); 
    $("#outbutton").click(function(){ 
        $("#target option:selected").each(function(){ 
            $("#allChoices").append($(this)); 
        }); 
    }); 
}); 


那么如何将选中的option的诸值向后台传递呢?

个人认为有两种思路:

①用隐藏域监听移动的操作,最后提交隐藏域的值

view plain
$(document).ready(function(){ 
     
         
         
        $("#inbutton").click(function(){ 
            $("#allChoices option:selected").each(function(){ 
                $("#hiddenUser").val($("#hiddenUser").val()+","+$(this).val()); 
                $("#selectuser").append($(this)); 
            }); 
             
            var v = $("#hiddenUser").val(); 
            if(v.indexOf(',')==0) { 
                v=v.substring(1,v.length); 
            } 
            $("#hiddenUser").val(v);//获得的结果形如1,2,3 
             
        }); 
         
        $("#outbutton").click(function(){ 
            $("#selectuser option:selected").each(function(){ 
                $("#alluser").append($(this)); 
            }); 
             
            $("#hiddenUser").val(""); 
            $("#selectuser option").each(function(){ 
                $("#hiddenUser").val($("#hiddenUser").val()+","+$(this).val()); 
            }); 
             
            var v = $("#hiddenUser").val(); 
            if(v.indexOf(',')==0) { 
                v=v.substring(1,v.length); 
            } 
            $("#hiddenUser").val(v); 
             
        }); 
         
         
    }); 


②不管中间的操作过程,只是在提交时获取目标框中的各option的值

view plain
$("#selectuser option").each(function(){ 
    $("#hiddenUser").val($("#hiddenUser").val()+","+$(this).val()); 
}); 
分享到:
评论

相关推荐

    Asp.net带复选框下拉表

    使用`DataBind()`方法将这些数据绑定到控件,确保每个复选框都有对应的值和文本。 7. **性能优化** 为了提高性能,可以使用分页或懒加载技术,只在用户需要时加载更多的选项。此外,缓存策略也可以用于减少数据库...

    带复选框的树形菜单-

    在IT界,尤其是在前端开发中,"带复选框的树形菜单"是一种常见的交互元素,它被广泛用于数据层级结构的展示和操作。这样的菜单允许用户以图形化的方式查看和选择多级分类的数据,例如文件系统、组织结构或者产品类别...

    3则applet程序

    第二个Applet(sy73)包含两个复选框(Checkbox),分别表示"学习"和"玩耍"。根据用户是否选中这两个复选框,程序会显示相应的状态:"玩耍"、"学习"或"劳逸结合"。这通过实现ItemListener接口完成,`...

    单选按钮和复选框按钮

    在IT界,尤其是在软件开发和用户界面设计中,单选按钮(Radio Button)和复选框(Checkbox)是两种常见的控件,它们用于收集用户的输入信息。这两种控件在网页、桌面应用程序和移动应用中广泛使用,为用户提供了一种...

    jQuery点击弹出下拉复选框代码.zip

    - 主要有两个部分:触发下拉的按钮和包含复选框的列表。按钮通常是一个`&lt;a&gt;`标签或者`&lt;div&gt;`,列表则是一个`&lt;ul&gt;`或`&lt;ol&gt;`,复选框是`&lt;input type="checkbox"&gt;`。 5. **JavaScript逻辑**: - 当用户点击按钮时,...

    全选案例&移动选项.rar

    在JavaScript中,我们可以通过监听复选框的`change`事件,然后更新其他所有复选框的状态。例如,我们可以为一个主复选框(全选按钮)添加一个ID,如`#selectAll`,并在JavaScript中编写如下代码: ```javascript ...

    单选复选.rar

    - **JavaScript处理**:复选框的选择状态可以通过JavaScript的checked属性获取或更改,也可以通过数组来管理多个复选框的状态。 在实际开发中,这两种控件的样式和交互可以通过CSS和JavaScript库(如jQuery UI、...

    jq\jquery下拉复选_选中的向上移

    5. `rgbmultiselect-1.1.1.js` 和 `rgbmultiselect-1.1.1.min.js`:这两个文件很可能是一个名为RgbMultiSelect的jQuery插件,专门用于创建具有向上移动选中项功能的下拉复选框。 6. `很好的jquery网址.txt`:这个...

    JQUERY复选框CHECKBOX全选,取消全选

    复选框元素在HTML中通过`&lt;input type="checkbox"&gt;`创建,每个复选框都有一个`name`属性和一个`value`属性。`name`属性将被提交到服务器,用于标识复选框的数据类别;`value`属性则用于传递选中复选框的具体值。 9. ...

    JQuery综合练习.docx

    })`实现,其中的匿名函数返回每个复选框当前选中状态的否定值。 2. **下拉框选项的移动**: 在这个练习中,有两个下拉框,分别代表“左侧选择”和“右侧选择”。用户可以将左侧的选项移动到右侧,也可以将右侧的...

    bootstrap下拉多选框

    该插件通过JavaScript和jQuery库来实现,允许用户在下拉菜单中进行多项选择,并可以以复选框的形式显示这些选项。 1. **安装与引入** 首先,你需要在项目中引入Bootstrap的基础CSS和JS文件,以及jQuery库。然后,...

    Javascript左右选择框

    JavaScript 左右选择框是一种常见的前端交互设计,它通常用于让用户在两个独立的列表之间进行元素的选择和转移。这种设计模式在很多应用场景中都能见到,比如用户权限设置、多选选项配置等。在这个"Javascript左右...

    css3-checkbox-switch-generator::confetti_ball:将输入复选框变成切换按钮,几秒钟之内没有任何其他元素! :confetti_ball:

    复选框和切换按钮都是用户界面中常见的交互元素,常用于让用户选择一个或多个选项,或者打开/关闭某种设置。在传统的HTML中,复选框通常表现为一个小方框,用户点击后打勾表示选中;而切换按钮则模仿物理开关,具有...

    程序天下:JavaScript实例自学手册

    10.6 复选框和文本框的联动效果 10.7 单击任意单元格都能自动选中复选框 10.8 调用复选框后面的文字 10.9 两个checkbox互斥问题 10.10 使用checkbox控制文本框 10.11 选中表格行前的复选框则行变色 10.12 用...

    《程序天下:JavaScript实例自学手册》光盘源码

    10.6 复选框和文本框的联动效果 10.7 单击任意单元格都能自动选中复选框 10.8 调用复选框后面的文字 10.9 两个checkbox互斥问题 10.10 使用checkbox控制文本框 10.11 选中表格行前的复选框则行变色 10.12 用...

    第二章第五节——单选与复选控件

    其次,复选控件,也称为复选框(Checkbox),允许用户在多个选项中自由选择,可以同时选择一个、多个或全部。复选框常用于用户需要表达多选需求的场景,如在订阅服务时,用户可以选择接收邮件通知、短信通知等。在...

    JavaScript-Web素材实例

    "网页特效复选框全选、全不选和反选"是增强复选框功能的JavaScript实现,使得用户可以方便地对一组复选框进行批量操作,如全选、全不选或反选,这对于数据筛选和管理非常实用。 压缩包中的各个HTML文件展示了这些...

    jq + avalon2 实现穿梭框.pdf

    穿梭框是一种常见的Web界面组件,它能够帮助用户在两个列表之间进行元素的选择和转移操作,从而实现快速的双向数据筛选。 ### 关键知识点解析: #### 1. jQuery的使用 jQuery是一个快速、简洁的JavaScript库,它...

    check_and_radio_box.rar_Radio

    用户可以勾选或取消勾选每个复选框,表示他们是否同意某项条款、选择特定的功能或服务,或者标记他们感兴趣的内容。在编程中,复选框通常通过布尔值(True/False)来表示状态,当复选框被选中时,对应的变量为True,...

    day03-js.zip

    在HTML中,当有多个复选框需要关联操作时,可以添加一个主复选框来控制所有复选框的状态。JavaScript可以监听主复选框的`change`事件,根据其选中状态更新所有子复选框的`checked`属性,实现全选或全不选的效果。 4...

Global site tag (gtag.js) - Google Analytics