[javascript] 오늘 날짜로 jQuery Datepicker 텍스트 상자를 미리 채우려면 어떻게합니까?

매우 간단한 jQuery Datepicker 달력이 있습니다.

$(document).ready(function(){
    $("#date_pretty").datepicker({
    });
});

그리고 물론 HTML에서 …

<input type="text" size="10" value="" id="date_pretty"/>

오늘 날짜는 달력을 표시 할 때 사용자에게 잘 강조 표시되지만 jQuery가 사용자가 아무것도하지 않고 페이지로드시 오늘 날짜로 텍스트 상자 자체를 미리 채우는 방법은 무엇입니까? 시간의 99 % 인 오늘 날짜 기본값은 원하는 것입니다.



답변

업데이트 : Chrome에서 더 이상 작동하지 않는 보고서가 있습니다.

이것은 간결하며 작업을 수행합니다 (폐기 됨).

$(".date-pick").datepicker('setDate', new Date());

이것은 사용, 덜 간결이다 체인은 크롬에서 작업 (2019년 6월 4일)에 있습니다 :

$(".date-pick").datepicker().datepicker('setDate', new Date());


답변

먼저 datepicker ()를 호출 한 다음 ‘setDate’를 사용하여 현재 날짜를 가져와야합니다.

$(".date-pick").datepicker();
$(".date-pick").datepicker("setDate", new Date());

또는이 답변에 대한 의견에 명시된 바와 같이 날짜 선택기 초기화 후 setDate 메소드 호출을 연결하십시오.

$('.date-pick').datepicker({ /* optional option parameters... */ })
               .datepicker("setDate", new Date());

그것은 것입니다 NOT 단지와 함께 작동

$(".date-pick").datepicker("setDate", new Date());

참고 : 허용되는 setDate 매개 변수는 여기 에 설명되어 있습니다


답변

var myDate = new Date();
var prettyDate =(myDate.getMonth()+1) + '/' + myDate.getDate() + '/' +
        myDate.getFullYear();
$("#date_pretty").val(prettyDate);

작동하는 것처럼 보이지만 더 나은 방법이있을 수 있습니다 ..


답변

setDate()방법은 날짜를 설정하고 관련 컨트롤을 업데이트합니다. 방법은 다음과 같습니다.

$("#datepicker1").datepicker({
    dateFormat: "yy-mm-dd"
}).datepicker("setDate", "0");

데모

문서에서 언급했듯이 setDate()JavaScript Date 객체, 숫자 또는 문자열을 행복하게 받아들입니다.

새 날짜는 Date 객체이거나 현재 날짜 형식의 문자열 (예 : ’01 / 26 / 2009 ‘), 오늘 이후의 일 수 (예 : +7) 또는 값 및 기간 문자열 (‘y ‘ 년, ‘m’개월, ‘w’주, ‘d'(예 : ‘+ 1m + 7d’) 또는 선택한 날짜를 지우려면 null입니다.

궁금한 경우 defaultDate생성자에서 속성을 설정해도 관련 컨트롤이 업데이트 되지 않습니다 .


답변

오늘로 설정 :

$('#date_pretty').datepicker('setDate', '+0');

어제로 설정 :

$('#date_pretty').datepicker('setDate', '-1');

그리고 일의 수와에 이전 또는 이후에 오늘 날짜 .

jQuery UI›메소드›setDate를 참조하십시오 .


답변

해결책은 다음과 같습니다.

$(document).ready(function(){
    $("#date_pretty").datepicker({
    });
    var myDate = new Date();
    var month = myDate.getMonth() + 1;
    var prettyDate = month + '/' + myDate.getDate() + '/' + myDate.getFullYear();
    $("#date_pretty").val(prettyDate);
});

고마워요 고스트!


답변

이 코드는 날짜 선택기 형식을 사용하도록 보장합니다.

$('#date-selector').datepicker('setDate', new Date());

형식을 다시 적용 할 필요가 없습니다. 날짜 선택기 초기화시 미리 지정한 날짜 선택기를 사용합니다 (지정 한 경우!);)