我的日期以這種格式輸出:2011年3月14日(DD-MMM-YYYY)例如。操作文本字符串(用於將日期格式轉換爲自定義日期格式)
是否有可能,使用jQuery將其轉換爲:03 \ 11(MM \ YY)?
我的日期以這種格式輸出:2011年3月14日(DD-MMM-YYYY)例如。操作文本字符串(用於將日期格式轉換爲自定義日期格式)
是否有可能,使用jQuery將其轉換爲:03 \ 11(MM \ YY)?
是。 你可以試試:
var value = $.datepicker.parseDate("dd-M-yy",date);
return $.datepicker.formatDate("dd\mm",value);
你只需要jquery.ui(也許你使用它...)
,但我怎麼會現在使你的代碼 工作格式中的所有日期說一個div 分類爲「日期」?例如:14-MAR-2011
Somerthing一樣,在你的jQuery腳本(沒有測試過,但是應該作品後糾正可能的錯誤):
$('.date').each(function(idx,elt) {
var value = $.datepicker.parseDate("dd-M-yy",$(elt).html());
$(elt).html($.datepicker.formatDate("dd\mm",value));
});
你可以在Datejs看一看:
var date = Date.parseExact('14-MAR-2011', 'dd-MMM-yyyy');
alert(date.toString('dd\\MM'));
好jQuery提供了一堆有用的工具,但我認爲這個東西,你應該只使用經典的JavaScript。 如果Date.parse()和date.toDateString()是不是你需要什麼,你可以看看here
如果你要工作了很多的日期,我會建議非常穩健Datejs LIB :http://www.datejs.com/
如果你只是要解析特定的格式(如在沒有受到變量),你可以使用substringing技術和有點邏輯的,如這樣的:
var badFormat = '14-DEC-2011', // input
goodFormat = badFormat.substr(9), // YY
month = badFormat.substr(3, 3); // MMM
// a switch statement would be long and readable (probably recommended)
if(month[0] == 'J')
if(month[1] == 'U')
month = month[2] == 'N' ? 6 : 7;
else month = 1;
else if(month[0] == 'F') month = 2;
else if(month[0] == 'M')
month = month[2] == 'R' ? 3 : 5;
else if(month[0] == 'A')
month = month[1] == 'P' ? 4 : 8;
else if(month[0] == 'S') month = 9;
else if(month[0] == 'O') month = 10;
else if(month[0] == 'N') month = 11;
else month = 12;
month = month < 10 ? '0' + month : month;
goodFormat = month + '\\' + goodFormat; // MM\YY
由於這看起來很有希望。 ..但我在哪裏實際上把這個? 我現在添加了jQuery UI(帶DatePicker)到我的網站,但我現在如何讓你的代碼工作來格式化所有日期說在div分類「日期」?例如:
太棒了! 只需要將formatDate更改爲:「mm \\ y」 即可獲得所需的格式幷包含反斜槓 謝謝Benoit – Adam 2011-03-04 14:32:14