button按钮添加disabled属性后不能触发点击事件的解决方法

button按钮里添加了disabled属性,是不能再触发点击事件的,但是我们可以给button添加一个div标签,在div里面添加点击事件。

html代码:
<div class="main">
    <input type="checkbox" id="check" onclick="onCheck()" autocomplete="off">记住我

    <div onclick="onBtn()">

        <input type="button" id="btn" disabled="disabled" value="登录">

    </div>

</div> 
css代码:
<style>

.main{

    width:300px;

    height:100px;

    margin:30px auto;

}

#btn{

    width:100px;

    height:35px;

    text-align:center;

    outline:none;

    border:none;

    border-radius:4px;

    background-color:#e2e2e2;

    color:#cfcfcf;

    font-size:1.2em;

}

</style>

效果图:


图片.png

我们想做出当我勾选checkbox,按钮的disabled属性取消,按钮颜色也变了,也可以提交登录信息,button按钮不可以触发onclick,但是我们可以用div上的的onclick事件提交信息;
js代码:

js代码:
<script>

var check =document.getElementById('check');

var btn =document.getElementById('btn');

function onCheck(){

      if(check.checked){

          btn.style.color="white";

          btn.style.backgroundColor="#1AAD19"

          btn.disabled=""

      }else{

          btn.style.color="#cfcfcf";

          btn.style.backgroundColor="#e2e2e2"

          btn.disabled="disabled"

    }

};

function onBtn() {

        console.log(1);

}

</script>

当我们勾选checkbox,按钮变绿,效果图:


image

点击登录会发送数据:


image

当我们取消按钮效果图:


image

注意火狐浏览器有一个缺点,就是当你选中checkbox,刷新页面,它还是被选中的,解决这个问题的方法就是在这个checkbox上加一个autocomplete="off";

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • //------------------------- 第一章 认识JQuery ----------------...
    米塔塔阅读 4,077评论 0 9
  •   JavaScript 与 HTML 之间的交互是通过事件实现的。   事件,就是文档或浏览器窗口中发生的一些特...
    霜天晓阅读 8,922评论 1 11
  • 单例模式 适用场景:可能会在场景中使用到对象,但只有一个实例,加载时并不主动创建,需要时才创建 最常见的单例模式,...
    Obeing阅读 6,614评论 1 10
  • Attribute: $("p").addClass(css中定义的样式类型); 给某个元素添加样式 $("img...
    扑克脸_457e阅读 3,728评论 0 1
  • 文档结构 需要使用HTML5文档结构 <!DocType html> 移动设备优先 需要在头部增加 标签 引...
    风之帆阅读 7,372评论 0 4

友情链接更多精彩内容