我正在制作一个活动申请表。我的问题如何将服务器时间与预定时间进行比较?那个预定义的时间我会把硬核写入我的HTML。
这是代码,但它不起作用。 如果服务器时间与预定义时间匹配,那么它应该给我一个警告“hi”。
<script type="text/javascript">
var currentTime = new Date()
var hours = currentTime.getHours()
var minutes = currentTime.getMinutes()
if (minutes < 10)
minutes = "0" + minutes
var suffix = "AM";
if (hours >= 12) {
suffix = "PM";
hours = hours - 12;
}
if (hours == 0) {
hours = 12;
}
var val1 = '5.43PM';
var timecount = hours + ":" + minutes + " " + suffix;
console.log(timecount);
if(timecount == val1) {
alert('true');
}
else {
alert('false');
}
</script>
<div class="zone"> 5.06 AM</div>
<div class="zone"> 6.06 AM</div>
<div class="zone"> 6.25 PM</div>
<div class="zone"> 5.03 PM</div>
<div class="zone"> 6.49 PM</div>
<div class="zone"> 8.05 PM</div>
答案 0 :(得分:0)
HTML和JavaScript在客户端的浏览器中运行。为了将时间与服务器时间进行比较,您需要使用某种服务器端语言将服务器的当前日期和时间输出到HTML。
答案 1 :(得分:0)
var currentTime = new Date()
为客户端机器提供的时间不是服务器时间,因为JS是客户端脚本。所以你需要改变你的方法。
就客户端时间而言,下面的代码应该有效:
<script type="text/javascript">
var currentTime = new Date()
var hours = currentTime.getHours()
var minutes = currentTime.getMinutes()
if (minutes < 10)
minutes = "0" + minutes
var suffix = "AM";
if (hours >= 12) {
suffix = "PM";
hours = hours - 12;
}
if (hours == 0) {
hours = 12;
}
var val1 = '6.45PM';
var timecount = hours + ":" + minutes + " " + suffix;
if(timecount == val1) {
alert('true');
}
else {
alert('false');
}
</script>