Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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 - Fatal编程技术网

如何在jquery中选中/取消选中复选框时执行事件

如何在jquery中选中/取消选中复选框时执行事件,jquery,Jquery,我有下面的jquery代码,它工作得很好 $('#onlyTwo').click(function() { $("#textarea3").attr("disabled", true); $("#textarea4").attr("disabled", true); $("#radio3").attr("disabled", true); $("#radio4").at

我有下面的jquery代码,它工作得很好

$('#onlyTwo').click(function() {
                $("#textarea3").attr("disabled", true);
                $("#textarea4").attr("disabled", true);
                $("#radio3").attr("disabled", true);
                $("#radio4").attr("disabled", true);
                return true;
            });
这将在单击“onlyTwo”复选框时禁用某些字段。如果未选中“onlyTwo”复选框,如何使这些字段再次启用

基本上,我想知道如何确定复选框是否被选中

$('#onlyTwo').click(function() {
     var elements = ['textarea3', 'textarea4', 'radio3', 'radio4'];
     var checked = $(this).attr('checked');

     jQuery.each(elements, function(element) {
       if (checked) {
         $('#'+element).attr('disabled', true);
       } else {
         $('#'+element).removeAttr('disabled');
       }
     });
})
这是一个简单的解决方案,当选中
$(“#onlyTwo”)
时,可以在所有想要的元素上切换disabled属性

修复了阵列问题,lol这充满了小错误。

$('#onlyTwo').click(function(){
   var stuff = $("#textarea3,  #textarea4, #radio3, #radio4");
   stuff.attr("disabled", $(this).is(":checked"));
});

因此,您需要将“disableMe”类添加到所有输入、文本区域、选择。。。你想禁用的。

哇,太棒了。你在哪里检查“切换”?另外,我在“')};”上得到一个语法错误关闭第二个函数时出现语法错误。在您发布的代码的最后一行的第二行,我现在在运行时收到一个“array is not defined line 40”错误:(我不认为这会起作用,至少在IE中,IE只关心禁用的属性是否存在,为了禁用元素,它不关心它的值。它必须输入非常快的值,数组行应该是var元素=['textarea3','textarea4','radio3','radio4'];if($(this).is(“:checked”)}必须更改为if($(this)。是吗(“:checked”))但除此之外它还能工作!谢谢!
$('#onlyTwo').change(function() {
    $('.disableMe').attr('disabled', $(this).is(':checked'));
});