0

私はタスクマネージャーアプリケーションを持っています。そのために、タスクを作成したいと思います。タスクは、他のタスク (複数) に依存する場合があります。そこで、以前のすべてのタスクを一覧表示するドロップダウンを作成しました。問題は、複数選択されたタスクの終了日を比較したいことであり、より高い日付が新しいタスクの開始日である必要があります。値を取得してテキストボックスに出力するために何かをしました。日付の値を比較してテキストボックスに出力する方法がわかりません。JavaScript初心者です。誰でも私を助けることができますか?以下にコードを掲載しました。

HTML

<html>
<body>
<select multiple name="pre_task" id="pre_task" onChange="change()">
<?php

while($t_res=mysql_fetch_array($t_que))
{
   echo "<option value='$t_res[t_id]'>$t_res[t_name]</option>";
}
?>
</select>
<?php
$t_que1=mysql_query("select * from task where p_id=$_SESSION[p_id]");
while($t_res1=mysql_fetch_array($t_que1))
{
  echo "<input type='hidden' value='$t_res1[t_to]' id='$t_res1[t_id]'> ";
}
?>
<label>Start Date</label>
<input type="text" id="from" value="">
</body>
</html>

Javascript

function getselected(selectobject) 
{
  var results = {};
  for (var i=0; i<selectobject.options.length; i++) 
  {
    var option = selectobject.options[i];
    var value = option.value;
    results[value] = option.selected;
  }
  return results;
}
var currentselect = {};
function change () 
{
   var selectobject = document.getElementById("pre_task");
   var newselect = getselected(selectobject);
   for (var k in newselect) 
   {
      if (currentselect[k] != newselect[k]) 
      {
        if (newselect[k]) 
        {
          var TextBox = document.getElementById("from");
          TextBox.value = document.getElementById(k).value;
        }
      }
    } 
 currentselect = newselect;
 }   

最後に選択した日付を取得してテキストボックスに出力するためにこれを作成しました

前もって感謝します

4

2 に答える 2

1

両方の日付値をDate オブジェクトに変換してから、通常の比較演算子を使用して比較を実行します。

于 2013-02-11T06:43:19.373 に答える
0

javascript Date の getTime() メソッドは、1970 年 1 月 1 日の午前 0 時からのミリ秒数を返すので、

dateObj1.getTime()-dateObj2.getTime()

違いを見つけるために。これから、最大の終了日を見つけることができます

于 2013-02-11T06:53:22.630 に答える