的問題是,在jquery.fmatter.js的DateFormat
功能不支持AM/PM在srcformat
:
// Tony Tomov
// PHP implementation. Sorry not all options are supported.
// Feel free to add them if you want
DateFormat : function (format, date, newformat, opts) {
具體來說,你可以看到下面有對A
選項不支持在解析時給定日期:
} else {
date = String(date).split(/[\\\/:_;.,\t\T\s-]/);
format = format.split(/[\\\/:_;.,\t\T\s-]/);
// parsing for month names
for(k=0,hl=format.length;k<hl;k++){
if(format[k] == 'M') {
dM = $.inArray(date[k],dateFormat.i18n.monthNames);
if(dM !== -1 && dM < 12){date[k] = dM+1;}
}
if(format[k] == 'F') {
dM = $.inArray(date[k],dateFormat.i18n.monthNames);
if(dM !== -1 && dM > 11){date[k] = dM+1-12;}
}
if(date[k]) {
ts[format[k].toLowerCase()] = parseInt(date[k],10);
}
}
if(ts.f) {ts.m = ts.f;}
if(ts.m === 0 && ts.y === 0 && ts.d === 0) {
return " " ;
}
ts.m = parseInt(ts.m,10)-1;
var ty = ts.y;
if (ty >= 70 && ty <= 99) {ts.y = 1900+ts.y;}
else if (ty >=0 && ty <=69) {ts.y= 2000+ts.y;}
timestamp = new Date(ts.y, ts.m, ts.d, ts.h, ts.i, ts.s, ts.u);
}
您有幾個選項。如果您可以修改Web服務,則可以讓它以不同格式(例如unix時間戳)返回日期,或者讓它以受支持的格式返回新的日期列。或者,您可以將此報告爲jqGrid錯誤並/或修復此代碼段以支持AM/PM說明符。
您的鏈接已經讓人大開眼界,併爲此感謝。我發現第一個選項更容易實現,並從服務器返回所需的格式。只要有解決方法,我認爲打開錯誤報告並不重要。再次閱讀鏈接上的開場白評論可能有一個理由不嘗試和實施任何可以想象的選項或格式。 – kagundajm