Sử dụng moment.js để chuyển đổi ngày tháng thành chuỗi “MM / dd / yyyy”


89

Tôi cần lấy giá trị ngày tháng từ jquery datepicker, biến nó thành định dạng chuỗi "MM / dd / yyyy" để nó có thể thực hiện đúng bài đăng ajax. Khi trang tải hoặc khi thay đổi bộ chọn ngày, một lệnh gọi ajax jquery được thực hiện.

Tôi có mã này:

var sTimestamp =
moment($("#start_ts").datepicker("getDate")).format("MM/dd/yyyy");

Nhưng nó không biến nó thành "MM / dd / yyyy". Khi tôi sử dụng fiddler để kiểm tra những gì được gửi xuống dây, đây là phần thân:

startTimestamp=03%2FTh%2Fyyyy&endTimestamp=03%2FTh%2Fyyyy&pageSize=50&pageNum=0

Nếu tôi sử dụng soạn thư trong fiddler và thay đổi nội dung thành:

startTimestamp=03/13/2013&endTimestamp=03/14/2013&pageSize=50&pageNum=0

Tôi nhận được phản hồi đúng. Vì vậy, câu hỏi của tôi là, có cách nào để lấy một đối tượng ngày tháng và định dạng nó thành chuỗi "MM / dd / yyyy" bằng cách sử dụng moment.js không? Hoặc có điều gì đó sai với cách tôi lấy ngày từ datepicker?

Btw, tôi giả sử rằng datepicker.getDate trả về một đối tượng ngày tháng vì đó là những gì tài liệu jQuery cho tôi biết.

Cảm ơn bạn,

Câu trả lời:


71

Tôi nghĩ rằng bạn chỉ có cách viết hoa không chính xác trong chuỗi định dạng. Theo tài liệu, điều này sẽ phù hợp với bạn:MM/DD/YYYY

tài liệu moment.js


115
StartDate = moment(StartDate).format('MM-YYYY');

... và định dạng ngày MySQL:

StartDate = moment(StartDate).format('YYYY-MM-DD');

2
Định dạng ngày của MySQL (YYYY-MM-DD) cũng có thể sắp xếp theo chữ và số, nó có thể được sử dụng trong tên tệp để sắp xếp tệp, rõ ràng và dễ đọc cho con người (không gây nhầm lẫn như dd / mm và mm / dd là), ISO 8601 và khá nhiều chỉ định dạng lành mạnh. "01/02/2016" chỉ là ... "Bạn đến từ đâu? Họ sử dụng định dạng ngày tháng ở đó?" ;)
Tedd Hansen

8

Thử đi:

var momentObj = $("#start_ts").datepicker("getDate");

var yourDate = momentObj.format('L');

7

Sử dụng:

date.format ("MM / DD / YYYY") hoặc date.format ("MM-DD-YYYY")}

Các định dạng được hỗ trợ khác để tham khảo:

Tháng:

M 1 2 ... 11 12

Mo 1 2 ... 12 11

MM 01 02 ... 11 12

MMM Tháng 1 Tháng 2 ... Tháng 11 Tháng 12

MMMM Tháng 1 Tháng 2 ... Tháng 11 Tháng 12

Ngày:

d 0 1 ... 5 6

làm 0th 1 ... 5 6

đ Su Mo ... Fr Sa

ddd Thứ Hai, Thứ Sáu Thứ Bảy

dddd Chủ nhật Thứ hai ... Thứ sáu Thứ bảy

Năm:

YY 70 71 ... 29 30

YYYY 1970 1971 ... 2029 2030

Y 1970 1971 ... 9999 +10000 +10001


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.