js利用变量对象设置标志位的方法参考

在日常开发当中,我们经常会遇到当进行一次操作以后,想要改变它的状态值,然后进行第二次操作的时候会是另外一种状态值,根据状态值的不同然后判断进行相应的操作,那么标志位就显得尤为重要了,它可以帮助我们解决日常开发当中的一些比较复杂的操作,废话不多说,举个简单的小案例供大家参考:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.bootcss.com/jquery/2.1.4/jquery.min.js"></script>
    <style>
       input {
            width: 220px;
            height: 34px;
            padding-left: 10px;
            border: 1px solid #e7eaec;
            margin: 5px 10px;
        }
    </style>
</head>
<body>

<form action="" class="formIpt">
    <input class="iptSv1" maxlength="20" type="text" value=""><br/>
    <input  class="iptSv2" maxlength="20" type="text" value=""><br/>
    <input  class="iptSv3" maxlength="20" type="text" value=""><br/>
    <input  class="iptSv4" maxlength="20" type="text" value=""><br/>
    <button type="button" class="btnSave">保存</button>
</form>

<script>
    allObj = {       //设置标志位的变量对象,我这里直接用0和1,0代表val没有输出,1代表val有值,默认都没有值
        "ipt": 0,
    }
    $(".formIpt").on("blur", 'input', function () {
        var fothis = $(this);
        if(fothis.val()){
            allObj.ipt = 1;        //当val有值的时候改变变量对象的默认值
        }else{
            allObj.ipt = 0;        //当val没有值的时候重新重置标志位的值为0
        }
    })
    $(".btnSave").on("click", function () {
        if(!allObj.ipt){          //如果没有对输入框进行操作那么就不让它保存  即:allObj.ipt==0
            console.log("没有对输入框进行操作,不允许保存");
        }else{                    //如果对输入框进行操作那么就让它保存
            console.log("已经对输入框进行操作,允许保存");
        }
        console.log(allObj);
    })

</script>

</body>
</html>

简单的小demo就演示到这,这只是简单的案例希望对大家有一定的参考,谢谢!

猜你喜欢

转载自blog.csdn.net/xuxinwen32/article/details/85263620