2013-08-14 2 views
1

내 페이지에서 Timepicker가 있는데 잘 알려진 문제가 포스트 백 동안 새 선택된 시간으로 업데이트되지 않고 초기 설정 시간을 유지합니다. 처음으로 . 그래서 나는 뒤에 숨어있는 코드에서 나중에 액세스 할 수있는 숨겨진 필드에서 선택된 시간을 저장하는 자바 스크립트가 있어야한다는 것을 알고 있습니다. 이제 문제는 자바 스크립트에서 timePicker의 값에 액세스하는 방법을 모른다는 것입니다. 내가 여기 ASP.NET TimePicker자바에서 TimePicker 값에 액세스

을 사용하고하면 timepicker 내 HTML 선언입니다 :

<cc1:TimeSelector ID="TimeSelectorDebut" BrhaviorID="TimeSelectorDebut" runat="server" DisplaySeconds="false" SelectedTimeFormat="TwentyFour" OnChange ="SaveNewTimes()"></cc1:TimeSelector> 
+0

포스트 timepicker에 관한 HTML의 섹션을 참조하십시오. 누군가가 가치에 액세스하는 방법을 알려주기 전에 페이지에서 어떻게 렌더링되는지 확인해야합니다. – Icarus

답변

1

이 작동합니다 :

function getTime(timePicker) { 
    var timeSel = document.getElementById(timePicker); 
    var inputs = timeSel.getElementsByTagName("input"); 
    if (inputs.length === 6) { 
     var hour = inputs[0].value; 
     var minutes = inputs[2].value; 
     var seconds = inputs[4].value; 
     var meridiem = inputs[5].value; 
     return hour + ":" + minutes + ":" + seconds + " " + meridiem; 
    } 
} 

사용법 :

var time = getTime('<%=TimeSelector1.ClientID %>'); 
console.log(time); 

참고 : 확인 이것은 요소가 포함 된 후에 반드시 포함됩니다. 로드 (window.load, document.ready 또는 페이지 하단, body 태그 뒤).

Result: 02:14:00 PM 

이 물론 문자열,하지만 당신은 쉽게 Date 객체로 그를 설정할 수 있습니다 :

return new Date(null, null, null, hour, minutes, seconds); 
+1

24 시간 형식을 사용하고 있기 때문에 코드를 제 형식으로 변경했습니다 ... 감사합니다. 셀렉터 내부의 테이블에 데이터가 저장되는 것에 대해 생각하지 않았습니다. 다시 한번 감사드립니다. –