相信大家经常遇到的。就是在可编辑列表中,要么加载的时候格式显示出错,要么点击修改的时候显示出错,要么就是提交到保存函数时为空值。
前面两种情况下面这篇blog已经有了。
http://wisekingokok.javaeye.com/blog/502521
后面一种情况是我用asp.net开发的时候,发现接收不到修改值。后来发现e.value 的时候是一个这样的时间格式:【Wed Mar 04 1970.....】,其实只需要提交ajax之前再格式化一次就可以了。
field: e.field,
value: new Date(e.value).format("Y-m-d")
value: new Date(e.value).format("Y-m-d")
最后是修复使用ie8浏览器时,时间控件的宽度问题:不知道3.0以上的版本修复了这个bug没有
Ext.isIE8 = Ext.isIE && navigator.userAgent.indexOf('MSIE 8')!=-1;
Ext.override(Ext.menu.Menu, {
autoWidth : function(){
var el =this.el, ul =this.ul;
if(!el){
return;
}
var w =this.width;
if(w){
el.setWidth(w);
}elseif(Ext.isIE &&!Ext.isIE8){ //Ext2.2 支持 Ext.isIE8 属性
el.setWidth(this.minWidth);
var t = el.dom.offsetWidth;
el.setWidth(ul.getWidth()+el.getFrameWidth("lr"));
}
}
});
Ext.override(Ext.menu.Menu, {
autoWidth : function(){
var el =this.el, ul =this.ul;
if(!el){
return;
}
var w =this.width;
if(w){
el.setWidth(w);
}elseif(Ext.isIE &&!Ext.isIE8){ //Ext2.2 支持 Ext.isIE8 属性
el.setWidth(this.minWidth);
var t = el.dom.offsetWidth;
el.setWidth(ul.getWidth()+el.getFrameWidth("lr"));
}
}
});