2

こんにちは、定義済みの開始時間に基づいて、li タグに HH:MM 時間を追加するにはどうすればよいですか?

背景: 順序付けられていないリストにダンス エントリをリストするダンス スケジューリング プログラムがあります。jQuery UI を使用して、ユーザーはダンス ルーチンを並べ替え、終了時にその日のダンス スケジュールの各ルーチンのタイミングを表示できます。各ダンス ルーチンの長さは 3 分、6 分、または 30 分で、この長さを li タグの属性に保存しています (間違って知っています)。一日の始まりは午前 8:00:00 です。各ルーチンに、その長さ、その前のダンス ルーチン、および一日の始まりに基づいて時間を追加したいと思います。

すべてのエントリを出力する私のループからの PHP li コードの例を次に示します。ルーチンの時間をスパン id='etimeXXX' に保存したいと思います。たとえば、ループ内の次のコード:

<ul id="sortable2">
...

$step2 .= "<li id='e".$e[entry_id]."' class='cat entry' lang='$length'>\n"
. "<span class='entry_time' id='etime".$e[entry_id]."'></span>"
. strtoupper($performance_title)]
. "</li>\n";

...
</ul>

...次のような出力になります:

  • 8:03:00 AM トゥインクルトゥインクル
  • 8:06:00 AM パイ・イン・ザ・スカイ
  • 8:09:00 AM チャレンジ
  • 次のようなものを使用して時間を表示しようとしていますが、機能していません。

    function createDanceTimes() {   
        var start_time = new Date("March 1, 2013 08:00:00");
    
        var h = start_time.getHours();
        var m = start_time.getMinutes();
    
        var entry_length = 0;
        var cur_time = m;
    
        $("#sortable2 li[id]").each(function(index) {           
            entry_length = $(this).children('span[id^="etime"]').attr('lang');
    
            m=m+entry_length;
    
            $(this).children('span[id^="etime"]').text(m);
        });
    }
    

    どんな助けでも大歓迎です!

    4

    1 に答える 1