簡體   English   中英

使用jquery在datepicker中設置初始值?

[英]Set initial value in datepicker with jquery?

我正在嘗試在我的jquery ui datepicker中設置初始值。 我嘗試了幾種不同的方式,但似乎沒有任何東西顯示日期,它是空的。

var idag = new Date();
$("#txtFrom").datepicker("setDate", idag - 2);
$("#txtTom").datepicker("setDate", idag);
$("#txtFrom").datepicker("refresh");
$("#txtTom").datepicker("refresh");

這個簡單的例子對我有用......

HTML

<input type="text" id="datepicker">

JavaScript的

var $datepicker = $('#datepicker');
$datepicker.datepicker();
$datepicker.datepicker('setDate', new Date());

我能夠通過簡單地查看@手冊並閱讀setDate的解釋來創建它:

.datepicker(“setDate”,date)
設置datepicker的當前日期。 新日期可以是Date對象或當前日期格式的字符串(例如'01 / 26/2009'),從今天開始的天數(例如+7)或一串值和句點('y'代表年,'m'持續數月,'w'持續數周,'d'持續數天,例如'+ 1m + 7d'),或為空以清除所選日期。

您可以在HTML中設置值,然后在init datepicker中設置該值以啟動/突出顯示實際日期

<input name="datefrom" type="text" class="datepicker" value="20-1-2011">
<input name="dateto" type="text" class="datepicker" value="01-01-2012">
<input name="dateto2" type="text" class="datepicker" >


$(".datepicker").each(function() {    
    $(this).datepicker('setDate', $(this).val());
});

以上甚至適用於丹麥日期格式

http://jsfiddle.net/DDsBP/2/

來自jQuery

如果該字段為空,請在第一次打開時設置要突出顯示的日期。 通過Date對象指定實際日期,或者指定當前dateFormat中的字符串,或者從今天開始的天數(例如+7)或一串值和句點('y'表示年份,'m'表示月份, 'w'持續數周,'d'持續數天,例如'+ 1m + 7d'),或今天為null。

代碼示例

使用指定的defaultDate選項初始化一個datepicker。

$(".selector").datepicker({ defaultDate: +7 });

在init之后獲取或設置defaultDate選項。

//getter
var defaultDate = $(".selector").datepicker("option", "defaultDate");
//setter
$(".selector").datepicker("option", "defaultDate", +7);

在初始化datepicker之后,您還應該能夠使用以下內容設置日期:

$(/*selector*/).datepicker("setDate" , date)

使用此代碼它會對您有所幫助。

<script>
InitializeDate();
</script>




<input type="text" id="txtFromDate" class="datepicker calendar-icon" placeholder="From Date" style="width: 100px; margin-right: 10px; padding: 0px 0px 0px 7px;">
        <input type="text" id="txtToDate" class="datepicker calendar-icon" placeholder="To Date" style="width: 100px; margin-right: 10px; padding: 0px 0px 0px 7px;">


function InitializeDate() {
    var date = new Date();
    var dd = date.getDate();             
    var mm = date.getMonth() + 1;
    var yyyy = date.getFullYear();

    var ToDate = mm + '/' + dd + '/' + yyyy;
    var FromDate = mm + '/01/' + yyyy;
    $('#txtToDate').datepicker('setDate', ToDate);
    $('#txtFromDate').datepicker('setDate', FromDate);
}

使用setDate

.datepicker( "setDate" , date )

設置datepicker的當前日期。 新日期可以是Date對象或當前日期格式的字符串(例如'01 / 26/2009'),從今天開始的天數(例如+7)或一串值和句點('y'代表年,'m'持續數月,'w'持續數周,'d'持續數天,例如'+ 1m + 7d'),或為空以清除所選日期。

我不完全確定我是否理解了您的問題,但似乎您正在嘗試為輸入類型Date設置值。

如果要為輸入類型日期 ”設置值,則必須將其格式化為“ yyyy-MM-dd ”(注意:大寫MM表示月份,小寫字母表示mm表示分鍾)。 否則,它將清除該值並將datepicker保留為空。

假設您有一個名為“ DateChanger ”的按鈕,並且您希望在單擊它時將日期選擇器設置為“ 2012年12月22日 ”。

<script>
    $(document).ready(function () {
        $('#DateChanger').click(function() {
             $('#dtFrom').val("2012-12-22");
        });
    });
</script>
<input type="date" id="dtFrom" name="dtFrom" />
<button id="DateChanger">Click</button>

請記住包含JQuery引用。

在初始化代碼之后使用它來獲取當前日期(以datepicker格式):

$(".ui-datepicker-today").trigger("click");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM