首页 > 解决方案 > 复选框事件

问题描述

我想做一个复选框输入,当我们选择它时,它会获取第一个输入的数量并将其减少 10,当我们取消选择它时,会打印第一个输入的原始数量。例如

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <input type="number" id="input">
    <input type="checkbox" onclick="one()">
    <p id="par">hrllo</p>
    <script>
        function one () {
            let input = document.getElementById("input").value;
            y = input - 10;
            document.getElementById("par").innerHTML = y;
            
            if(!event.target.checked){
           
            document.getElementById("par").innerHTML = input;
            
            }
        }
    </script>
</body>
</html>

标签: javascripthtml

解决方案


您可以定义复选框元素的 id,并且基于 id 可以检查复选框是否被选中。

这是您更新的代码。

<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script type="text/javascript">

    </script>
</head>
<body>
    <input type="number" id="input">
    <input type="checkbox" onclick="one()" id="checkboxId">
    <p id="par">hrllo</p>
    <script>
        function one () {
            var check = document.getElementById("checkboxId");
        if (check.checked) {
            alert("CheckBox checked.");
             let input = document.getElementById("input").value;
            y = input - 10;
            document.getElementById("par").innerHTML = y;
        } else {
            alert("CheckBox not checked."+document.getElementById("input").value);
             document.getElementById("par").innerHTML=document.getElementById("input").value;
            }
        }
    </script>
</body>
</html>

推荐阅读