复选框未取消选中jquery的change事件

时间:2016-03-08 17:41:48

标签: javascript jquery asp.net checkbox

我的asp.net网站上有一个复选框和按钮,按钮css属性设置为隐藏在页面加载上,借助我要显示和隐藏asp.net按钮的复选框,问题是复选框已选中但我无法取消选中它....请帮助我提供代码

<script>
        $(function () {
            $("#Btnforgotpass").css('display', 'none');
        });


        $(document).ready(function () {


            $("[id$=chkforgotpass]").change(function () {

                if (document.getElementById("chkforgotpass").checked = true) {
                    alert('checked');
                    $("[id$=Btnforgotpass]").css('display', 'inline');

                }
                else {
                    alert('unchecked');
                    $("[id$=Btnforgotpass]").css('display', 'none');
                }
            });
        });
</script>

2 个答案:

答案 0 :(得分:0)

在你的if语句上

尝试将=更改为===你指定不使用此语句进行比较

$(function() {
  $("#Btnforgotpass").css('display', 'none');
});


$(document).ready(function() {


  $("[id$=chkforgotpass]").change(function() {

    if (document.getElementById("chkforgotpass").checked === true) {
      alert('checked');
      $("[id$=Btnforgotpass]").css('display', 'inline');

    } else {
      alert('unchecked');
      $("[id$=Btnforgotpass]").css('display', 'none');
    }
  });
});
<!DOCTYPE html>
<html>

<head>
  <script src="https://code.jquery.com/jquery-2.1.4.js"></script>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>

<body>
  <button id="Btnforgotpass">
    Button
  </button>
  <input type="checkbox" id="chkforgotpass">
</body>

</html>

答案 1 :(得分:0)

if (document.getElementById("chkforgotpass").checked = true) {更改为if (document.getElementById("chkforgotpass").checked == true) {

如果您使用的是jQuery,这样做太简单了。

$(document).ready(function() {
   $("[id$=chkforgotpass]").change(function() {
       var isChecked = $(this).is(":checked") : "inline" : "none";
       $("[id$=Btnforgotpass]").css('display', isChecked);
  });
});