2

私はここでたくさん読んで、投稿から多くの解決策を見つけました。これは私の最初の質問です。うまくいくことを願っています。

http: jquerymobile.com /demos/ 1.2.1 /docs /forms /textinputs/ の datetime-local 入力タイプを使用しています。

データベースの日時を事前に入力したい(mysqlとphpを使用)

問題は、フィールドに値を取得しても日時ピッカーがないか、値を取得せずに日時ピッカーがポップアップすることです。

1. 事前入力の方法を説明しているドキュメントが見つからないようです。私はそれを見落としていますか?2.誰かがこれを解決するのを手伝ってくれますか?

~=-=-=-=-=-=~

私のテストコードは次のとおりです。

        <div data-role="fieldcontain">
            <label for="datetime-l">Datetime local:</label>
            <input type="datetime" name="datetime-l" id="datetime-l"  value="<?php
            $date1 = new Datetime($rrecord->strval('datenote'));
            echo $date1->format(DateTime::ISO8601);
            ?>" />
        </div>

        <div data-role="fieldcontain">
            <label for="datetime-2">Datetime local:</label>
            <input type="datetime-local" name="datetime-2" id="datetime-2"  value="<?php echo $rrecord->strval('datenote') ?>" />
        </div>

最初のフィールドには日付が入力されていますが、タッチしても日時ピッカーはポップアップしません。

リンクされたスクリーンショットを参照してください -- http://picpaste.com/2013-09-12_21.45.11_1.png

2 番目のフィールドは空ですが、タッチすると日時ピッカーがポップアップします。

リンクされたスクリーンショットを参照してください -- http://picpaste.com/2013-09-12_21.45.19.png

これは、入力をエコーするデバッグ コードです。それらは最初のスクリーンショットに表示されます。

    <?php echo "debug datetime prefill from database"; ?>
    <?php
    echo "<br/>rrecord strval('datenote') = ", $rrecord->strval('datenote');
    $date1 = new DateTime($rrecord->strval('datenote'));
    echo "<br/> date1 format(DateTime::ISO8601) = ", $date1->format(DateTime::ISO8601);
    ?>
4

2 に答える 2

5

電話を使用して日時を入力できました。出力の日時形式を見ました。形式は「Ymd\TH:i」です。以下では、入力日付を PHP から適切にフォーマットしました。

        <div data-role="fieldcontain">
            <label for="datetime-l">Date:</label>
            <input type="datetime-local" name="datetime-l" id="datetime-l"  value="<?php
            echo date("Y-m-d\TH:i", strtotime($rrecord->strval('datenote')));
            ?>" />
        </div>

これは機能します。

于 2013-09-16T14:50:42.677 に答える
-1
$(document).ready(function() {
$("#datetime-1").val(<?php YOUR CODE ?>);
$("#datetime-2").val(<?php YOUR CODE ?>);
});

少しハックですが、うまくいくはずです。日付の形式がjq mobileが期待するものであることを確認してください。

于 2013-09-13T15:39:51.580 に答える