C# jQuery倒计时有问题吗?函数serverSync:serverTime
serverSync:serverTime函数从服务器返回值,但我已检查服务器和客户端时间是否相同。当我调用服务器与服务器同步时,它将不显示倒计时。帮帮我C# jQuery倒计时有问题吗?函数serverSync:serverTime,c#,asp.net,jquery,C#,Asp.net,Jquery,serverSync:serverTime函数从服务器返回值,但我已检查服务器和客户端时间是否相同。当我调用服务器与服务器同步时,它将不显示倒计时。帮帮我 $(function() { var shortly = new Date(); var newTime = new Date('April 9, 2010 20:38:10'); //for loop divid /// $('#defaultCoun
$(function() {
var shortly = new Date();
var newTime = new Date('April 9, 2010 20:38:10');
//for loop divid
///
$('#defaultCountdown').countdown({
until: shortly, onExpiry: liftOff, onTick: watchCountdown, serverSync: serverTime
});
$('#div1').countdown({ until: newTime });
});
function serverTime() {
var time = null;
$.ajax({
type: "POST",
//Page Name (in which the method should be called) and method name
url: "Default.aspx/GetTime",
// If you want to pass parameter or data to server side function you can try line
contentType: "application/json; charset=utf-8",
dataType: "json",
data: "{}",
async: false,
//else If you don't want to pass any value to server side function leave the data to blank line below
//data: "{}",
success: function(msg) {
//Got the response from server and render to the client
time = new Date(msg.d);
alert(time);
},
error: function(msg) {
time = new Date();
alert('1');
}
});
shortly = time;
return time;
}
[WebMethod]
public static String GetTime()
{
DateTime dt = new DateTime();
dt = Convert.ToDateTime("April 9, 2010 22:38:10");
return dt.ToString("dddd, dd MMMM yyyy HH:mm:ss");
}
您不应该在这里调用serverTime()吗- 像这样:
这将解决问题,但不会同步。也许其他人可以弄明白为什么
async:false
,会破坏这一点?我没有任何线索。我意识到这已经快一年了,但是如果有人有类似的问题,我想到了一个可以避免AJAX复杂性的解决方案。因为我们使用的是服务器上的日期,所以我们不必担心客户机上的时间,所以我们不必调整时区或客户机时钟关闭。它应该和网络延迟一样准确
<script type="text/javascript">
jQuery(document).ready(
function() {
var eventTime = new Date('March 20, 2011 08:00:00');
jQuery('#div_countdown').countdown({ until: eventTime,
serverSync: function() { return new Date('<%=DateTime.Now.ToString("dddd, dd MMMM yyyy HH:mm:ss")%>'); }
});
}
);
</script>
jQuery(文档).ready(
函数(){
var eventTime=新日期('2011年3月20日08:00:00');
jQuery('#div_倒计时')。倒计时({until:eventTime,
serverSync:function(){返回新日期(“”);}
});
}
);
我打电话给sir,但它没有显示输出,以查看该功能是否有任何输出。var a=serverTime();警报(a);是,它将显示时间,但倒计时重置为0:0:0重复问题:和
$('#defaultCountdown').countdown({
until: shortly, onExpiry: liftOff, onTick: watchCountdown, serverSync: serverTime()
});
async: true,
<script type="text/javascript">
jQuery(document).ready(
function() {
var eventTime = new Date('March 20, 2011 08:00:00');
jQuery('#div_countdown').countdown({ until: eventTime,
serverSync: function() { return new Date('<%=DateTime.Now.ToString("dddd, dd MMMM yyyy HH:mm:ss")%>'); }
});
}
);
</script>