Javascript 使用jQuery比较服务器时间和当前时间
我正在尝试将VBScript转换为Javascript,使用jQuery比较服务器时间和当前时间Javascript 使用jQuery比较服务器时间和当前时间,javascript,jquery,vbscript,Javascript,Jquery,Vbscript,我正在尝试将VBScript转换为Javascript,使用jQuery比较服务器时间和当前时间 If Not IsDate(frmLogDetail.hidServerTime.value) Then frmLogDetail.hidServerTime.value = Now End If frmLogDetail.hidTimeOffset.value = DateDiff("s", Time, TimeValue(frmLogDetail.hidServerTime.value) )
If Not IsDate(frmLogDetail.hidServerTime.value) Then
frmLogDetail.hidServerTime.value = Now
End If
frmLogDetail.hidTimeOffset.value = DateDiff("s", Time, TimeValue(frmLogDetail.hidServerTime.value) )
这就是我所拥有的:
var hdServerTime = $("#hidServerTime");
if (!IsDate(hdServerTime)) {
hdServerTime.val(new Date());
alert(hdServerTime.val());
}
var dateSelected = $("#hidServerTime").val();
var hdTimeOffset = $("#hidTimeOffset").val();
hdTimeOffset = DateDiff(Date.now, new Date(dateSelected));
function DateDiff(first, second) {
return (second - first) / (1000 * 60 * 60 * 24)
}
JavaScript是一种客户端脚本语言,因此,除非您支持服务器端脚本(如PHP),否则您将无法访问服务器端脚本。Date.now将为您提供自1970年1月1日00:00:00 UTC以来的客户端时间(毫秒) 我发现你的代码很混乱,我想你正在做一个PHP实现?隐藏div/span?所以我将用我将要做的来回答 获取服务器端时间的一种方法是使用PHP为页面提供服务,并在实际运行Javascript客户端之前在Javascript中全局定义变量。您可以在页面的标记中执行以下操作:
<?php
echo "<script type='text/javascript'>
var servertime = ".time().";
</script>"
?>
这个实现很好,因为你根本不需要jQuery,你也不需要在页面上隐藏元素来处理一些SEO问题
var hdTimeOffset = $("#hidTimeOffset").val();
hdTimeOffset = …;
这不是使用jQuery分配值的方式。这段代码只分配给变量hdTimeOffset,它不是DOM的神奇引用。相反,使用
var hdTimeOffset = …;
$("#hidTimeOffset").val(hdTimeOffset);
请参见jQuery并不是万能的。你需要做一些思考。检查一下,你可能想调用Date.now,而不是将其作为函数传递
var hdTimeOffset = …;
$("#hidTimeOffset").val(hdTimeOffset);