easyui databox更改显示样式

yanzhaojun7 2016-04-12 12:17:42
<input class="easyui-datebox" type="text" data-options="formatter:myformatter,parser:myparser" name="txt_deal_date" size="20" maxlength="8" style="width: 80%; cursor: hand">

function myformatter(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);
//alert(y+","+(m<10?('0'+m):m)+","+(d<10?('0'+d):d));
return y+""+(m<10?('0'+m):m)+""+(d<10?('0'+d):d);
}
function myparser(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();
}
}
无论怎么选择都是今天???怎么回事?但是如果我要设置日期中间含有连接符y+"-"+(m<10?('0'+m):m)+"-"+(d<10?('0'+d):d)的时候就是正确的
...全文
148 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Go 旅城通票 2016-04-12
  • 打赏
  • 举报
回复
你myparser都没弄好,那不是都返回 new Date()了。。你又没用-分隔,split干嘛?。。
        function myparser(s) {
		    if (!s)
		        return new Date();
		    var m = /(\d{4})(\d{2})(\d{2})/.exec(s);
		    if (m) return new Date(m[1] + '/' + m[2] + '/' + m[3]);
		    else return new Date();
		  
		}

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧