搜尋

首頁  >  問答  >  主體

javascript - 條件不同,執行事件相同的情況 怎麼封裝?

wzCommon.checkRequired = function (parent, errorStr, fn) {
    var required = parent.find('.required'),
        oNumber = parent.find('.number'),
        oTel = parent.find('.tel'),
        flag = true;
    if (required.length > 0) {
        required.each(function () {
            var getVal = $(this).val();
            if (getVal === '') {
                layer.msg(errorStr, {icon: 2});
                flag = false;
                return false;
            }
        });
    }
    if (oNumber.length > 0) {
        oNumber.each(function () {
            var verifyNumber = $(this).val();
            if (isNaN(verifyNumber)) {
                layer.msg(errorStr, {icon: 2});
                flag = false;
                return false;
            }
        });
    }
    
    if (oTel.length > 0) {
        oTel.each(function () {
            var getVal = $(this).val();
            debugger;
            if (!wzCommon.isPhoneNo(getVal)) {
                layer.msg(errorStr, {icon: 2});
                flag = false;
                return false;
            }
        });
    }
    
    if (flag) {
        fn();
    }
    return true;
};

我的思路是這樣,但是不清除怎麼寫

wzCommon.checkStr = function (obj, errorStr, fn) {
    if (obj.length > 0) {
        obj.each(function () {
            var getVal = $(this).val();
            if (这里是不同条件) {
                layer.msg(errorStr, {icon: 2});
                flag = false;
                return false;
            }
        });
    }
    
    if (flag) {
        fn();
    }
    return true;
};
高洛峰高洛峰2764 天前439

全部回覆(2)我來回復

  • 習慣沉默

    習慣沉默2017-05-19 10:17:57

    雷雷

    回覆
    0
  • 阿神

    阿神2017-05-19 10:17:57

    required =parent.find('.required'),

    雷雷 雷雷

    回覆
    0
  • 取消回覆