2011-01-31 8 views
0
$("#div-calendar").datepicker({ onSelect: SelectedDay }); 

function SelectedDay(date, inst) { 
    var s = inst.dpDiv.find('.ui-datepicker-current-day a').parent().attr("class"); 
    alert(s); 

} 

클릭 한 날짜/셀의 클래스를 가져 오려고합니다.jQuery DatePicker OnSelect 이벤트 너무 일찍 발생했습니다.

문제는 클래스가 변경되기 전에 이벤트가 발생하므로 항상 이전 클릭의 클래스를 표시합니다. 대신에 "OnSelected"가 필요합니다. 어떤 아이디어입니까?

$("#div-calendar").datepicker({ onSelect: SelectedDay }); 

function SelectedDay(date, inst) { 
    // HACK: the ui hasn't been updated yet, check later 
    window.setTimeout(function() { 
     var s = inst.dpDiv.find('.ui-datepicker-current-day a').parent().attr("class"); 
     alert(s); 
    }, 0); 
} 
+0

밤은 그것이 $ (inst.dpDiv) .find ('.의 UI 날짜 선택기 - 현재의 일에')처럼 shud : – Rafay

+0

무엇이 있어야하나요? 지금 당장은 정확히 'ui-datepicker-current-day'를 리턴 할 것이므로 그 요점을 알지 못합니다. – Victor

+0

두 버전 모두 작동하지 않습니다. –

답변

1

내가 과거에 사용에 의지 한 못생긴 해킹

. 부모(). attr ('calss')
+0

더 나은 해결책을 찾지 못했습니다. 지금은이 방법이 최선의 방법입니다. 감사합니다. 누군가가 더 나은 대안을 가지고 있다면 공유하십시오. –

+0

more @ http://stackoverflow.com/questions/4629495/jquery-ui-calendar-add-links-to-chosen-dates-possible/4864085#4864085 –

관련 문제