js怎样实现button点击它会被选中,再次点击取消选中?

如题所述

button{
   background:#fff;
}
button.active{
   background:red;
}

假设上边的css表示button的俩种状态,正常状态和选中状态

<button type='button' id="btn">按钮</button>

这个是按钮


var btn = document.getElementById('btn');
btn.onclick=function(){//添加点击事件
    if(btn.className.indexOf('active')){ //说明已经是选中状态
        btn.className = '';//清空class。
    }else{
        btn.className = 'active';//否则选中它,给它添加active样式
    }
}


//如果用jquery,会很方便实现
$('#btn').click(function(){//给id为btn的元素添加点击事件
    $(this).toggleClass('active');//每次点击的时候,将当前的元素切换active样式
                                  //如果有,则去掉,否则添加
});

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-11-19
给你个简单方法 当你点击时触发Click事件,在事件里面执行切换按钮的背景图片就OK啦
第2个回答  2015-07-10
  每次点击的时候都做个if判断,如果被选中了则让Checked=false,否则就选中;
  参考如下:
  var flag = true;
  function chkRadio(id) {
  id.checked = flag;
  flag = !flag;
  }
  用html控件,改成服务器控件,在后台加上: RadioButton1.Attributes.Add("onclick","chkRadio(this)");
  <input id="rType" type="radio" value="1" onclick="chkRadio(this)"/><label for="rType">测试</label>