1

ドロップダウンボックスから選択した2つの時間値があります。時間形式はhh:mm am/pmです。2つの日付を比較する必要があります。私はこのコードを実行しましたが、うまくいきません。

<select id="eventstarttime">
  <option>10:00am</option>
  ........
  <option>3:00pm</option>
 </select>

 <select id="eventstoptime" onblur="return checktime()">
  <option>10:00am</option>
  ........
  <option>3:00pm</option>
 </select>

javascriptメソッドは

 function checktime()
{
    var start = document.getElementById("eventstarttime").value;
    var end = document.getElementById("eventstoptime").value;


    if(Date.parse('01/01/2011 '+end) < Date.parse('01/01/2011 '+start))
    {
        alert("End time should exceed the start time");
    }
    else if(Date.parse('01/01/2011 '+end) -Date.parse('01/01/2011 '+start)==0)
    {
        alert("Start time and end time cannot be same");
    }
    return false;
}
4

5 に答える 5

7

要素に24時間の時間value属性を追加すると、次のようになります。option

<select id="eventstarttime">
  <option value="1000">10:00am</option>
  <option value="1215">12:15pm</option>
  <option value="1500">3:00pm</option>
</select>

<select id="eventstoptime" onblur="return checktime()">
  <option value="1000">10:00am</option>
  <option value="1215">12:15pm</option>
  <option value="1500">3:00pm</option>
</select>

を使用して簡単に比較できます

function checktime()
{
    var start = document.getElementById("eventstarttime").value;
    var end = document.getElementById("eventstoptime").value;

    if (end < start)
    {
        alert("End time should exceed the start time");
    }
    else if (end == start)
    {
        alert("Start time and end time cannot be same");
    }
    return false;
}

DateJavaScriptメソッドは必要ありません。

于 2013-03-07T12:23:05.833 に答える
3

ampmを時間値から で区切る必要がありspaceます。また、あなたのコード変数dtEnddtStartは、定義されていません。else の部分では、次のようにします。

else if(end == start)
{
   alert("Start time and end time cannot be same");
}
于 2013-03-07T12:11:42.387 に答える
1

試してくださいstrtotime( http://php.net/manual/en/function.strtotime.php )

$firstTime="10:00 am";
$secondTime="3:00 am";
$result =strtotime ($firstTime) > strtotime($secondime);
于 2013-03-07T12:06:26.813 に答える
0

次のようにPHPで実行できます。

var d1 = "15:30";
var d2 = "15:36";
if (new Date(d1) < new Date(d2)) {alert('newer')}

参照 URL を見てください:

jQuery/JS - 2 つの日付/時刻スタンプを比較するには?

現在の時刻を取得し、jquery を使用してそれらを比較する方法

PHP を使用すると、次のように実行できます。

$time1 = strtotime("15:30");
$time2 = strtotime("15:40");

if($time1<$time2)
{
   echo "time 1 is smaller";
}
else if($time1>$time2)
{
   echo "time 2 is smaller";
}
else
{
   echo "both are same";
}

これがあなたを助けることを願っています

于 2013-03-07T12:01:37.400 に答える