2

データベースから値が入力される編集フォームがあります。フォーマットに 1 つのdateフィールドがありますyyyy-mm-ddjQuery Datepickerをセットアップし、日付フィールドで作業していますが、フォームが最初に読み込まれると、入力タイプにデータベースからの値が含まれていても、HTML ソースをチェックすると日付フィールドが空になります。

日付フィールドにデータベースの日付を表示するにはどうすればよいですか?

編集:

データベースから値を取得してjQuery/javascript変数/関数(デフォルトの日付、showbeforeなど)に再度挿入するのではなく、入力値をテキストフィールドに表示する必要があります。

datepickerそもそも値の非表示を無効にするにはどうすればよいですか? クリックして日付を選択した場合にのみ、値を置き換えます。

HTML コード:

<input type="text" id="date" name="reg_date" value="2012-01-30" />

実際のコードは PHP であり、データベースから値が取得され、値フィールドに挿入されます。Firefox で HTML ソースを見て確認したので、値が正しく生成されて挿入されています。

日付ピッカー設定:

$(function() {
    $( "#date" ).datepicker({
        changeMonth: true,
        changeYear: true
});
    $( "#date" ).datepicker({ dateFormat: "yy-mm-dd" });
    $( "#date" ).datepicker( "option", "dateFormat", "yy-mm-dd" );
});
4

4 に答える 4

0

Datepickerは値を上書きしています。日付フィールドに焦点を合わせたときに、datepickerをトリガーすることをお勧めします。

于 2012-06-19T14:18:58.023 に答える
0

さて、コードを投稿したので、それは非常に明白です。

データベースの日付形式は YYYY-MM-DD です jQuery UI の形式は yy-mm-dd です 何が問題なのですか? 少なくとも 2 桁の年がありません。

これを修正するには、コードに正しい形式を入力するだけです。

例:

$( "#date" ).datepicker({ dateFormat: "dd-MM-yyyy" });
$( "#date" ).datepicker( "option", "dateFormat", "dd-MM-yyyy" );
于 2012-06-19T20:44:54.397 に答える
0

これを変更します:

$(function() {
    $( ".date" ).datepicker({
        dateFormat: "yy-mm-dd",                 
        changeMonth: true,
        changeYear: true
    });
});

ブラウザがキャッシュされている場合... CTRL + F5を押します

于 2012-06-19T19:31:31.117 に答える
0

datepicker 設定コードでデフォルトの日付を設定する必要があります。

例:$( ".selector" ).datepicker({ defaultDate: +7 });デフォルトの日付を今から 7 日後に設定します。

実話。

于 2012-06-19T15:44:38.090 に答える