//将日期输入框变为年月的函数方法
var month=0;
$('#effectiveDate').datebox({
onShowPanel: function () {//显示日趋选择对象后再触发弹出月份层的事件,初始化时没有生成月份层
span.trigger('click'); //触发click事件弹出月份层
if (!tds) setTimeout(function () {//延时触发获取月份对象,因为上面的事件触发和对象生成有时间间隔
tds = p.find('div.calendar-menu-month-inner td');
tds.click(function (e) {
e.stopPropagation(); //禁止冒泡执行easyui给月份绑定的事件
var year = /\d{4}/.exec(span.html())[0]//得到年份
, month = parseInt($(this).attr('abbr'), 10) + 1; //月份
console.log(month);
//alert(month);
$('#effectiveDate').datebox('hidePanel')//隐藏日期对象
.datebox('setValue', year + '-' + month); //设置日期的值
});
}, 0);
},
parser: function (s) {//配置parser,返回选择的日期
if (!s) return new Date();
var arr = s.split('-');
month=parseInt(arr[1], 10);
monthStr=month==13?month-1:month;
var newDate=new Date(parseInt(arr[0], 10)+"/"+monthStr+"/01");
return newDate;
},
formatter: function (d) {
var f=d.getFullYear() + '-' + d.getMonth();
if(month==13){
f=d.getFullYear() + '-' + (d.getMonth()+1);
}
return f;
}//配置formatter,只返回年月
});
var p = $('#starDate').datebox('panel'), //日期选择对象
tds = false, //日期选择对象中月份
span = p.find('span.calendar-text'); //显示月份层的触发控件
相关文章
- 08-14easyui datebox 不以选择未来时间
- 08-14DatePickerDialog 控制只选择年月或年或月
- 08-14easyui datebox 只选择年月
- 08-14easyui datebox 年月 yyyyMM 格式
- 08-14easyui datebox 扩展 只显示年月
- 08-14Easyui datebox单击文本框显示日期选择
- 08-14jquery easyui datebox单击文本框显示日期选择
- 08-14玩转控件:重绘DEVEXPRESS中DateEdit控件 —— 让DateEdit支持只选择年月 (提供源码下载)
- 08-14easyUI日期框返回到月份,选择日期也只到月份
- 08-14JavaScript-自制日历控件(只选择年月)