微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – 无法根据复选框选中的属性在按钮中添加/删除禁用的属性

jQuery的:
<script type="text/javascript">

function  enabledisableButton() {

    var isChecked = ($('input[name=ignore-checkBox]').is(':checked'));

    if (isChecked == true) {
        $("button[name=set-up-account]").removeAttr("disabled");
    }
    else {
        $("button[name=set-up-account]").attr("disabled","disabled");
    }

}

$('#mobilePage').live('pageinit',function (event) {    //document ready for jquery mobile

    enabledisableButton();

    $('#ignore-checkBox').bind("change",function () {
        enabledisableButton();
    });

});
  </script>

HTML:

@using (Html.BeginForm("Account","SetUpAccount",FormMethod.Post,new { @id = "account-set-up",@data_ajax = "false" }))
 {       

     <div class="ui-grid-a field">
        <div class="ui-block-a" style="width:140px;">
         <label for="ignore-checkBox">Ignore</label>
         <input type="checkBox" name="ignore-checkBox" id="ignore-checkBox"/>
        </div>
     </div>

     <div style="width:100%;float:left;">
         <button type="submit" name="set-up-account" id="set-up-account"  data-inline="true"  data-mini="true">Set Up Account</button>
     </div>
  }

我想基于复选框选中属性启用/禁用“设置帐户”按钮.如果选中复选框,则启用该按钮,否则禁用.在页面加载时,我正在禁用该按钮

我面临的问题是,

页面加载时,它禁用按钮,但它没有根据复选框的更改事件添加/删除禁用的属性,我在firebug中检查,它根据已检查和未检查的值正确进入循环.

注意:我使用的是Jquery mobile 1.2和jquery 1.7.此外,在发布此处之前,我在谷歌搜索,根据复选框选中的值启用和禁用按钮下有很多帖子.但没有人能解决我的问题.

有什么问题?请帮我

谢谢…

解决方法

我不确定这是否有助于解决您的主要问题,但根据 http://api.jquery.com/prop/,您应该使用.prop()函数添加删除disabled属性,而不是.attr()和.removeAttr()函数.

添加属性

.prop("disabled",true);

删除属性

.prop("disabled",false);

我在寻找上述信息时偶然发现了这个问题,所以我想我会分享.

原文地址:https://www.jb51.cc/jquery/177167.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐