Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/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
Javascript 多次选中复选框以选择值_Javascript_Jquery_Jquery Ui - Fatal编程技术网

Javascript 多次选中复选框以选择值

Javascript 多次选中复选框以选择值,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,我有一个复选框,设置为true时必须禁用其他文本框。 这里真正的问题是,复选框仅在我第一次单击两次时才更改值。这是我第一次点击两次来禁用其他文本框。否则,它完全可以正常工作。 这里我给出了我的jquery函数: function bundlecheckout(val,total) { $("#file_check"+val).click(function() { $('input[id^="file_check"]').attr("checked", false);

我有一个复选框,设置为true时必须禁用其他文本框。 这里真正的问题是,复选框仅在我第一次单击两次时才更改值。这是我第一次点击两次来禁用其他文本框。否则,它完全可以正常工作。 这里我给出了我的jquery函数:

function bundlecheckout(val,total)
{ 

   $("#file_check"+val).click(function() {
        $('input[id^="file_check"]').attr("checked", false);
        //$("#file_check"+val).unbind('click');
        $(this).attr('checked', true);
        $("#checkout").attr("disabled", !this.checked);
        for(i=0;i<=total+1;i++)
        {             
            if(i !=val ){           
            $("#txtinstruction"+i).attr("disabled", this.checked);
            $("#txturl"+i).attr("disabled", this.checked);
        }
        else{
            $("#txtinstruction"+i).removeAttr("disabled");
            $("#txturl"+i).removeAttr("disabled");
            }
        }   
   }    
);}
复选框元素

<input type="checkbox" class="file_check" name="file_upload_check" value="<?php echo $testing_type_id;?>" id="file_check<?php echo $testing_type_id;?>" onclick="bundlecheckout(<?php echo $testing_type_id;?>,<?php echo $total ?>);"/>Apply<br />

请尝试下面的代码。我不知道你为什么要把点击事件绑定到点击本身

function bundlecheckout(val,total,e)
    { 
            $('input[id^="file_check"]').attr("checked", false);
            //$("#file_check"+val).unbind('click');
            $(e).attr('checked', true);
            $("#checkout").attr("disabled", !this.checked);
            for(i=0;i<=total+1;i++)
            {             
                if(i !=val ){           
                $("#txtinstruction"+i).attr("disabled", this.checked);
                $("#txturl"+i).attr("disabled", this.checked);
            }
            else{
                $("#txtinstruction"+i).removeAttr("disabled");
                $("#txturl"+i).removeAttr("disabled");
                }
            }   
      }
<input type="checkbox" class="file_check" name="file_upload_check" value="<?php echo $testing_type_id;?>" id="file_check<?php echo $testing_type_id;?>" onclick="bundlecheckout(<?php echo $testing_type_id;?>,<?php echo $total ?>,this);"/>Apply<br />

发布PHP代码有什么意义?@Col.shrapanel,这里没有PHP。事实上,我从来没有遇到过这样的问题:。然而,发布PHP代码是绝对没有意义的,因为PHP不能与jquery一起工作。@Col.shrapanel,哦,html中有PHP,但问题是关于jquery的,我认为您可以安全地忽略PHP,只需了解它在回显值。为什么要在单击本身上绑定单击事件?