你如何对变量加以限制?

时间:2017-06-04 19:32:16

标签: javascript html button

我正在尝试创建一个添加和删除按钮,该按钮的输入具有文本类型并显示数字。添加和删​​除按钮工作,它将显示正数和负数。我不希望它显示负数。如何制作它不能低于0?此外,我不希望输入有一个数字类型。

这是我的代码:

<button onclick="add();">ADD</button>
<button onclick="remove();">REMOVE</button>
<input type="text" id="inc">

<script>
var i = 0;
    function add() {
        if(i >= 0) {
            i++;
            document.getElementById('inc').value = i;
        } else {
            i = 0;
            document.getElementById('inc').value = i;
        }

    }
        function remove() {
        i--;
        document.getElementById('inc').value = i;
    }
        </script>

4 个答案:

答案 0 :(得分:0)

与您在add()函数中设置约束的方式相同,仅在remove()处理时才对i-1 >= 0函数执行相同操作:

 function remove() {        
    if(i-1 >= 0) {
        i--;           
        document.getElementById('inc').value = i;
    }
  }

答案 1 :(得分:0)

只需更改remove功能,使其不会低于零

function remove() {
    i = i > 0 ? i - 1 : 0;
    document.getElementById('inc').value = i;
}

答案 2 :(得分:0)

除了已建议的答案外,您还可以使用Math.max()确保值永远不会低于0.

i--替换为i = Math.max(i - 1, 0)

答案 3 :(得分:0)

试试这个

&#13;
&#13;
var i = 0;
    function add() {
        if(i >= 0) {
            i++;
            document.getElementById('inc').value = i;
        } else {
            i = 0;
            document.getElementById('inc').value = i;
        }

    };
        function remove() {
        i--;
        if(i >= 0){
        document.getElementById('inc').value = i;
        }
        else{
        return false;
        }
    }
&#13;
<button onclick="add();">ADD</button>
<button onclick="remove();">REMOVE</button>
<input type="text" id="inc">
&#13;
&#13;
&#13;

相关问题