javascript - 禁用和启用选中复选框的按钮

标签 javascript jquery

我的表单上有一个默认情况下禁用的按钮

<input disabled type="submit" value="" name="subscribe" id="mc-embedded-subscribe" class="subscribe__button">

我还有一个选择复选框:

 <label class="subscribe__optin">
     <input id="optin" type="checkbox" value="true" name="optin"> Ja, ik ga akkoord met de privacyverklaring
 </label>

想法是,如果复选框被选中,按钮必须是可点击的。但是,如果您在选中复选框后再次取消选中该复选框,则该按钮必须被禁用。

我的 jQuery 代码是:

$("#optin").on("change", function(e){
        if($("#optin").attr("checked")){
            $("#mc-embedded-subscribe").attr('disabled','disabled');
            console.log('checked');
        } else {
            $("#mc-embedded-subscribe").removeAttr('disabled');
            console.log('not checked');
        }
});

当我点击复选框时,我的控制台总是显示“未选中”。 我在这里做错了什么? 我已经在 stackoverflow 上检查了其他一些示例,但这些似乎都没有解决我的问题。

最佳答案

http://api.jquery.com/prop/

就是attributes和properties的区别,只是我们在开发的时候,几乎不把区别看成一样。

关于javascript - 禁用和启用选中复选框的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53174282/

相关文章:

javascript - Joomla Ajax jQuery

javascript - 如何使用 pdflatex 子进程在 Node.js 中获取 PDF 作为流?

jquery、 session 、缓存

jquery - 使用 JQuery 单击图像以更改 DIV 中背景的位置

javascript - Jquery Flot图表调整大小: replace hour-ticks 00:00 to 0 if small screen

javascript - Bootstrap-确认删除照片

javascript - jQuery 将焦点设置在元素之外

javascript - .push() 在 Next.js 上不正确地推送两次

javascript - Angular JS 基于输入框的计算

javascript - ajax 调用后更新动态生成的列表项(使用 PHP 生成)