2017-6-5周一,今天碰到的一个需求是:两税附征模块进入页面筛选时间默认值为当前月的上一个月,并根据筛选结果显示数据,我们用的框架为miniUI。
坑1:
默认值设置,刚刚接触miniUI,对里面的用法和操作不太熟悉,所以我直接用jquery找到时间输入的input框,设置它的val属性,发现不生效,后来查了资料才发现涉及miniUI的标签要用miniUI提供的方法。设置默认值代码如下:
//设置id为month2的input框的默认值
mini.get('month2').setValue(nowDate);
坑2:
js时间获取问题,获取月份是获取的月份是0-11,如果想获取当前月份要做+1操作,但我的需求是获取上个月,所以不用做,为0的时候设置为12就可以了:
var date = new Date();
var month = date.getMonth();
month = ((month == 0) ? (12) : (month));
获取年份的时候更坑,按照惯性思维,获取月份用getMonth,那获取年份不就该用getYear,当时我真佩服我的小机智,结果问题来了,输出的不是2017,而是117,之所以出现这样的问题我想可能是当时js诞生时(92年),浏览器的规范标准还没有统一,导致getYear的换算规则在现在规范标准下不适用。取而代之的是:
var year = date.getFullYear();
坑3:
SQL查询中如果要查询的字段为null,但想让它为null时显示一个默认值怎么做?
//有值为SUM(G_ZZS),为null显示0
nvl(SUM(G_ZZS),0)