未选中复选框时禁用/启用按钮

时间:2018-05-29 10:33:09

标签: javascript jquery checkbox

我在C#中有一个MVC应用程序,并且在一个视图中会有一些复选框,在这个复选框列表中,如果我传递一些或其他ID值,某些复选框将从数据库“检查并禁用”。 /> 但我的问题是我的按钮只能提交,如果我选中复选框启用或如果我有超过2启用并检查所有复选框已启用,但未选中复选框已禁用。 click here

<input type="checkbox" name="SelectAll" id="checkboxPrincipal" />SelectALL


    @foreach (var item in Model)
        {


<input type="checkbox"   id="mycheckbox" class="mycheck"  onchange="isChecked(this,'myButton');" checked="checked" disabled="disabled"/>
<input type="checkbox"   id="mycheckbox" class="mycheck" onchange="isChecked(this,'myButton');"/>
<input type="checkbox"   id="mycheckbox" class="mycheck" onchange="isChecked(this,'myButton');"/>


                }




    <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#myModal" id="myButton" name="myButton" disabled >Actualizar</button>


        <script type="text/javascript">
         function isChecked(mycheckbox,myButton) {
            console.log(myButton);
            var myLayer = document.getElementById(myButton);
            if (mycheckbox.checked == true) {
                myLayer.disabled = false;
            } else {
                myLayer.disabled = true;
            }
        }


        $('.checkboxPrincipal').change(function () {
           if ($('.checkboxPrincipal:checked').length == $('.checkboxPrincipal').length) {
              $('#myButton').prop('disabled',true);
           }
           else{
              $('#myButton').prop('disabled',false);
           }
         });

    </script>

1 个答案:

答案 0 :(得分:-1)

你可以在jQuery中使用checkbox的checked属性和disable属性,如下例所示:

$(document).ready(function () {
if(chkbox1.checked==true) {
   $('button').attr('disabled','disabled');
}

});