jquery easy ui datebox 只返回年和月

有一個需求是按月查詢和按日查詢,選擇按月查詢,日期控件返回yyyy-MM,切換至按日查詢後,日期控件返回yyyy-MM-dd。目前控件採用jquery-easyui,所以直接採用datebox,調試了很久,終於搞定了。jquery-easyui採用1.4版本,jquery爲1.11版本,代碼如下:

$("#item").combobox({
		onSelect : function(t){
			$("#key").datebox("setValue", "");
			
			if (t.value%2==1){
				//按日
				$("#key").datebox({
					formatter: function(date){
						var y = date.getFullYear();
						var m = date.getMonth()+1;
						var d = date.getDate();
						return y+'-'+(m<10?('0'+m):m)+'-'+(d<10?('0'+d):d);
					},
					parser : function(s){
						if (!s) return new Date();
						var ss = s.split('-');
						var y = parseInt(ss[0],10);
						var m = parseInt(ss[1],10);
						var d = parseInt(ss[2],10);
						if (!isNaN(y) && !isNaN(m) && !isNaN(d)){
							return new Date(y,m-1,d);
						} else {
							return new Date();
						}
					}
				});
			}else{
				//按月
				$("#key").datebox({
					formatter: function(date){
						var y = date.getFullYear();
						var m = date.getMonth()+1;
						return y+'-'+(m<10?('0'+m):m);
					},
					parser : function(s){
						if (!s) return new Date();
						var ss = s.split('-');
						var y = parseInt(ss[0],10);
						var m = parseInt(ss[1],10);
						var d = 1;
						if (!isNaN(y) && !isNaN(m) && !isNaN(d)){
							return new Date(y,m-1,d);
						} else {
							return new Date();
						}
					}
				});
			}
		}
	});


item爲按日和按月切換控件


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章