0
$('#ID').on('click', function() {
    if(!CommonUtil.compareDateById('startDt','endDt',false, false, true)) {
        return false;           
    }
    var cnt = 0;

    if(!CommonUtil.isNullOrEmptyById('startDt'))     { cnt++; }

if(cnt == 0) {
        CommonUtil.setFocusById('srchWord','<spring:message code="confirm.input" arguments="XXXX"/>');
        return false;

所以如果我点击#ID,就会发生以下逻辑。我的问题是什么 var cnt = 0;

if(!CommonUtil.isNullOrEmptyById('startDt')) {
    cnt++;
}

意思是?

的功能isNullOrEmptyById如下:

isNullOrEmptyById: function(id) {
    var value = this.getTrimValueById(id);

    return this.isNullOrEmpty(value);
},

但是什么

cnt++;

在这里做??

4

2 回答 2

1

这实际上是不必要的。由于 cnt 仅在其值为 0 或 1 时才增加。相反,您可以摆脱所有这些并使用 isNullOrEmptyById 函数。

if(!CommonUtil.isNullOrEmptyById('startDt')){
   CommonUtil.setFocusById('srchWord','<spring:message code="confirm.input" arguments="XXXX"/>');
   return false;  
}
于 2013-11-12T00:51:04.593 回答
1

这只是一个if条件块:

if(!CommonUtil.isNullOrEmptyById('startDt')) {
  cnt++;
}

因此,如果CommonUtil.isNullOrEmptyById('startDt')解析为false,则条件解析为true并执行块中的代码:

cnt++;

++运算符递增该值所以无论是什么数值都cnt将增加 1。

不过,在代码的整体上下文中,它似乎cnt更像是一个布尔值而不是一个整数。除非在此示例之外还有更多代码,否则可以通过对最后一个条件块使用此条件而不是使用cnt然后检查其值来简化此操作。

于 2013-11-12T00:51:50.863 回答