0

5日間のチェックリストアプリをまとめようとしています。チェックリスト アプリには、ページ全体に水平に広がる 5 つの div があります。各 div は 1 日を表します。各 div は曜日を表し、各 div にはその特定の日の日付値を保持する非表示の入力フィールドが含まれています。各 div にはチェックリスト ボタンもあり、ユーザーがそのボタンをクリックすると、タスク リストが削除され、その場所にタスクを追加するためのフォームが表示されます。その特定の div の日付である非表示の入力フィールドの値を取得しようとしています。ただし、「this」キーワードを使用しているにもかかわらず、どのチェックリスト ボタンをクリックしても、現在の日付しか返されません。最初の div の入力値です。クリックしたチェックリスト ボタンに基づいて、一意の入力値 (日付) を選択するにはどうすればよいですか?

jquery:

$(".task-btn").click(function(){
    // Setting form to the clone I want to acces in .on()
    var refdate = $(this).closest('#replace').children('.hidden-date').val();
    console.log(refdate);
});

html と php:

<?php 
  $date = date("F j, Y");
  $refDate = date("Y-m-d");
  $counterForLi = 0;
?>
<div id="replace">
              <input type="hidden" name="thedate" class="hidden-date" value="<?php echo $refDate; ?>">
              <h2 class="day"></h2>
                <h4 class="thedate">
                  <?php
                    if ($counter > 0) {
                      $tomorrow = mktime(0, 0, 0, date("m"), date("d")+$counter, date("y"));
                      $refDate = date("Y-m-d", $tomorrow);
                      $date = date("F j, Y", $tomorrow);
                      echo $date;
                    } else {
                      echo $date;
                    }
                  ?>
                </h4>
                <?php echo $refDate; ?>

                <div class="btn-group">
                  <button class="btn task-btn">Add Task</button>

注: 各 div の日付をエコーアウトし、php に問題がないことを確認しました。

4

1 に答える 1

0

あなたの質問への答えは次のようになりますが:

$(this).parents("#replace").find('.hidden-date').val();

あなたが示したスニペットも機能するはずなので、あなたの問題は別の場所にあります

于 2012-07-06T20:31:35.887 に答える