Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将jQuery复选框翻转效果转换为循环_Jquery_Html_Loops_Checkbox - Fatal编程技术网

将jQuery复选框翻转效果转换为循环

将jQuery复选框翻转效果转换为循环,jquery,html,loops,checkbox,Jquery,Html,Loops,Checkbox,我尝试循环以下效果:我可以选中几个复选标记的效果,当我选择“翻转”按钮时,底部的复选标记将出现,对应于顶部的复选框。我宁愿使用.each(function(){循环。如何将下面的脚本代码转换为循环?(下面的代码确实有效,但我正在尝试将其转换为循环)。感谢您的时间和帮助 下面的原始脚本:当选择按钮flip时,将选择与非相反的类复选框相对应的相反的类复选标记 $(文档).ready(函数(){ 变量ID_顶部 变量ID_btm $(“#复制”)。单击(函数(){ 对于(i=1;i 我宁愿使用.ea

我尝试循环以下效果:我可以选中几个复选标记的效果,当我选择“翻转”按钮时,底部的复选标记将出现,对应于顶部的复选框。我宁愿使用
.each(function(){
循环。如何将下面的脚本代码转换为循环?(下面的代码确实有效,但我正在尝试将其转换为循环)。感谢您的时间和帮助

下面的原始脚本:当选择按钮flip时,将选择与非相反的类复选框相对应的相反的类复选标记

$(文档).ready(函数(){
变量ID_顶部
变量ID_btm
$(“#复制”)。单击(函数(){
对于(i=1;i
我宁愿使用.each(function(){loop

您可以选择所有复选框元素,其ID以大写字母A开头,结尾不带后缀_flipwith:

$(':checkbox[id^=A]:not([id$=_flip])')
为了使用each循环,您可以:

 $(':checkbox[id^=A]:not([id$=_flip])').each(function(index, element) {
    if (element.checked) {
        $('#' + element.id + '_flip').prop('checked', true);
    }
});
片段:

$(文档).ready(函数(){
$(“#复制”)。在('click',函数(e){
$(':复选框[id^=A]:不是([id$=\U flip])。每个(函数(索引,元素){
如果(元素已选中){
$('#'+element.id+'_flip').prop('checked',true);
}
});
});
});

A-1
A-4
轻弹
清楚的
A-1
A-4

您可以循环查看顶部的选项,对于每个选中的选项,您可以检查底部相应的选项

对于
中包含的每个复选框元素,如果选中,则将其放在
中包含的复选框中。否则,将其取出。由于prop接受布尔值,因此可以使用三元运算符使其快速

var flipCheckbox = function(){
    $('.not_opposite [type=checkbox]').each(function(index){

        // Selecting opposite checkbox
        // With the same selection index as the loop current one
        // Setting prop to true/false according to current loop

        $('.opposite [type=checkbox]').eq(index)
        .prop('checked', $(this).is(':checked') ? true : false); 
    });
};

$('#copy').on('click', flipCheckbox);

谢谢,效果很好。脚本帮助很大。如果我想添加一个循环,允许我将复选框分成两组,然后对每组两个进行评估,该怎么办?如何添加这种类型的效果/代码