2014-01-17 2 views
0

ASP.Net AJAX Calendar Extender를 사용하여 텍스트 상자에 날짜를 설정하고 있습니다. 자바 스크립트에서 사용자가 선택한 날짜를 가져 오는 것은 간단하지만, 나는 금요일에 날짜를 설정하기 위해 고심하고있다.자바 스크립트로 작성된 날짜 - 금요일 전에

자세한 내용은 예를 들어, 사용자가 화요일 인 것으로 판명 된 날짜를 선택한 경우, 텍스트 상자에 표시하고자하는 것은 그주의 금요일이 아니라 금요일 전입니다 , 즉 3 일 전에 있었던 것.

내가 얻은 것은 다음 금요일, 즉 올라 오는 것을 얻는 것이지만, 내가 원하는 것을 얻기 위해 다양한 방법으로 코드를 사용하여 놀았습니다. 누군가 도움을받을 수 있습니까?

덕분에 순수 자바 스크립트 jsFiddle

dayToMtceSet = 5; 
distance = (dayToMtceSet - currentDay) % 7; 
toDate = toDate.setDate(toDate.getDate() + distance); 
document.getElementById('<%= txtFromDate.ClientID%>').value = formatDate(toDate); 
toDateSet = new Date(toDate); 
toDateSet = toDateSet.setDate(toDateSet.getDate() + 6); 
document.getElementById('<%= txtToDate.ClientID%>').value = formatDate(toDateSet); 

답변

0

:

if (date.getDay() === 5) { 
    console.log(date); 
} else { 
    var beforeOneWeek = new Date(date.getTime() - 60 * 60 * 24 * 7 * 1000), 
     day = beforeOneWeek.getDay(), 
     diffToFriday = day > 5 ? 6 : 5 - day;  
     date.setDate((date.getDate() - 7) + diffToFriday); 

    console.log(date); 
} 

또한 date.js

사용할 수 있습니다 참조 jsFiddle

var date = Date.today(); 

if (date.getDay() === 5) { 
    date = Date.today(); 
} else { 
    date = date.moveToDayOfWeek(5, -1) // 5 is Friday, -1 is back one week 
} 
+0

S orry는 고객의 평가를 거치기 때문에 OpenSource Stuff를 사용할 수 없습니다. 이 다른 방법이 있습니까? – Andy5

+0

위의 편집 내용과 [jsFiddle] (http://jsfiddle.net/fczrp/) – Tom

+0

코드를 보내 주셔서 감사합니다.하지만 토요일을 선택하면 금요일 날짜가 조정되지 않지만 선택한 토요일 날짜. 코드를 어디에서 조정해야합니까? – Andy5

관련 문제