2011-03-08 48 views
7

Có thể lấy ngày trong tuần từ sự kiện onSelect của datepicker.Trình ghi ngày tháng của jQuery ui, nhận Ngày trong tuần từ onSelect

Tôi biết tôi có thể lấy ngày trong tháng, nhưng tôi muốn ngày trong tuần. Ngay cả chỉ số ngày sẽ vẫn ổn, ví dụ: 0-6.

Tôi biết bạn có thể lấy nó trong beforeShowDay (hoặc tương tự) sự kiện, nhưng tôi cần phải phản ứng khác nhau tùy thuộc vào ngày trong tuần chọn. Việc cần làm là đặt thời gian mở cửa.

tôi có thể đánh máy chủ và tìm hiểu, nhưng đó không phải là sẽ quay trở lại đủ nhanh ... lý tưởng tôi muốn nó tất cả được thực hiện trên máy khách.

Trả lời

13

này nên làm như lừa:

function(event, ui) { 
    var date = $(this).datepicker('getDate'); 
    var dayOfWeek = date.getUTCDay(); 
}; 

này có lợi thế là không cần phải phân tích những gì tùy ý ngày định dạng mà bạn đã chọn cho lĩnh vực văn bản của datepicker - phương pháp getDate trả về một bản địa Javascript Date đối tượng mà bạn có thể dễ dàng trích xuất các trường ngày bạn cần.

+0

bạn đang thiên tài đẫm máu !!! Cảm ơn !!! – SteveCl

5

Ngoài ra, nếu bạn muốn tên thật của ngày trong tuần (không sử dụng chỉ mục getUTCDay thành một mảng giống như ['Chủ nhật', 'Thứ hai', ...], bạn có thể sử dụng đối tượng datepicker tự đưa cái này cho anh, như dưới đây

var curDate = $(this).datepicker('getDate'); 
var dayName = $.datepicker.formatDate('DD', curDate); 

này cũng có thể được sử dụng để có được một ngày rút gọn của tên tuần (M), ngày dài hay ngắn của tháng (MM hoặc M) bằng cách thay thế DD cho bất cứ thành phần bạn sau

Các vấn đề liên quan